i64
  • 2024-10-01The 2024 ICPC Asia East Continent Online Contest (II)
    A.GamblingonChoosingRegionals最差情况就是,强队都和你去一起。因此赛站越小,排名也一定越小。然后只要动态实现出每个学校最强的若干只队伍就好了。#include<bits/stdc++.h>usingnamespacestd;usingi32=int32_t;usingi64=longlong;#defineinti64using
  • 2024-09-28CF2014H Robin Hood Archery(异或哈希)
    题目链接题意Alice和Bob将进行一场射击比赛题解点击查看代码#include<bits/stdc++.h>usingi64=longlong;i64seed=std::chrono::high_resolution_clock::now().time_since_epoch().count();std::mt19937_64rng(seed^std::random_device{}());constexp
  • 2024-09-22快速幂
    快速幂一个简单的技术,可以认为是一种小trick。不叫ksm,可以叫fastPow,或者叫binaryPow。后者的名字为我们解释了这个trick的本质的一部分。这个算法/技术/trick主要利用了二进制分解。二进制可以用二进制表达任意一个十进制整数\(1_{10}=1_{2}\)\(2_{10}=10
  • 2024-09-18The 2024 CCPC Online Contest
    https://codeforces.com/gym/105336B-军训II排序后肯定是最优解,方案数就是能排成有序序列的个数#include<bits/stdc++.h>usingnamespacestd;usingi32=int32_t;usingi64=longlong;usingi128=__int128;#defineinti64usingvi=vector<int>;using
  • 2024-09-17Codeforces Round 972 (Div. 2)
    A.SimplePalindrome考虑到对于同一种字母无论怎么摆放,对答案的影响是相同的。所以我们可以直接把同一种字母放在一起,考虑不同中字母间为了消除回文串,必须是的同一种字母不会出现在另一种字母的两侧。因此我们只要尽可能的均分五种字母就好了。#include<bits/stdc++.h>using
  • 2024-09-162023 CCPC 秦皇岛
    A.MakeSYSUGreatAgainI因为\(k\ge2n\),所以可以顺序按照以阶梯形状摆放,这样可以保证每行每列两个,且\(\gcd\)都是1,剩下的数字随便放就好了。#include<bits/stdc++.h>usingnamespacestd;usingi32=int32_t;usingi64=longlong;#defineinti64usingvi=
  • 2024-09-15The 17th Heilongjiang Provincial Collegiate Programming Contest A(思维 + 二分)
    题意有\(n\)本类型\(A\)的书题解点击查看代码#include<bits/stdc++.h>usingi64=longlong;voidsolve(){ inta,b,n,m,h; std::cin>>a>>b>>n>>m>>h; i64cnt=i64(n/b)*(h-a); if(cnt>=m-1)
  • 2024-09-11The 2020 ICPC Asia Shenyang Regional Programming Contest
    D-JourneytoUn'Goro记\(p_i\)表示前缀\(i\)中\(\mathrmr\)的个数。则题目要求的是\(p_r-p_{l-1}\)为奇数最多有多少对。显然应该越平均越好。\(p_i\)总共有\(n+1\)个,则奇偶数的数量均不超过\(m=\left\lceil\frac{n+1}{2}\right\rceil\),答案就是\((n+1-m)\time
  • 2024-09-09牛客小白月赛100
    A-ACM中的A题#include<bits/stdc++.h>usingnamespacestd;usingi32=int32_t;usingi64=longlong;#defineinti64usingvi=vector<int>;constintN=10;chars[N];i32main(){inta,b,c;cin>>a>>b>>
  • 2024-09-042024 Xiangtan University Summer Camp-Div.2
    A.二度树上的染色游戏因为题目保证了是二叉树,所以每次至多只需要选择一个子节点染成红色。所以可以贪心的选择红色权值小的子树即可。#include<bits/stdc++.h>usingnamespacestd;usingi32=int32_t;usingi64=longlong;usingldb=longdouble;consti32inf
  • 2024-08-31AtCoder Beginner Contest 053
    A-ABC/ARC#include<bits/stdc++.h>usingnamespacestd;usingi64=longlong;intmain(){ ios::sync_with_stdio(false),cin.tie(nullptr); intx; cin>>x; if(x<1200)cout<<"ABC"; elsecout<<"ARC&q
  • 2024-08-30The American University in Cairo CSEA End of Winter Break Contest 2023
    链接:https://codeforces.com/gym/104168\(\\\)ADivisorDifference签到,输出\(n-1\)即可,复杂度\(O(1)\)。点击查看代码#pragmaGCCoptimize("unroll-loops,Ofast")#include<bits/stdc++.h>usingnamespacestd;usingi64=longlong;#defineendl&
  • 2024-08-30The 3rd Universal Cup. Stage 7- Warsaw
    B.MissingBoundaries给\(N\)个区间,可能存在一些区间的端点不确定。现在你要指定区间的端点,是否可以使得所有不重不漏的覆盖\([1,L]\)首先考虑两个端点都确定的区间,两两之间应该不相交。考虑只有一个端点的区间,对于已经被确定的点,一定不能是在已被覆盖的区间内。其次所有的
  • 2024-08-29Educational Codeforces Round 169 (Rated for Div. 2)
    A.ClosestPoint有解的情况,当且仅当只有两个点且不相邻是,把新加入的点放在中间。#include<bits/stdc++.h>usingnamespacestd;usingi32=int32_t;usingi64=longlong;usingi128=__int128;#defineinti64usingvi=vector<int>;usingpii=pair<int,int
  • 2024-08-29Testing Round 19 (Div. 3)
    A.AlternatingSumofNumbers#include<bits/stdc++.h>usingnamespacestd;usingi32=int32_t;usingi64=longlong;usingi128=__int128;usingvi=vector<int>;usingpii=pair<int,int>;consti32inf=INT_MAX/2;consti64
  • 2024-08-27AtCoder Beginner Contest 052
    A-TwoRectangles#include<bits/stdc++.h>usingnamespacestd;usingi64=longlong;intmain(){ ios::sync_with_stdio(false),cin.tie(nullptr); intA,B,C,D; cin>>A>>B>>C>>D; cout<<max(A*B,C*D);
  • 2024-08-23AtCoder Beginner Contest 050
    基本上独立做出来了。A-AdditionandSubtractionEasy模拟。#include<bits/stdc++.h>usingnamespacestd;usingi64=longlong;intmain(){ ios::sync_with_stdio(false),cin.tie(nullptr); intA,B; charC; cin>>A>>C>>B; if(C==
  • 2024-08-23AtCoder Beginner Contest 中的小思维题
    078Dhttps://atcoder.jp/contests/abc078/tasks/arc085_b问题陈述我们有一副由\(N\)张牌组成的扑克牌。每张牌上都写着一个整数。从最上面开始的第\(i\)张牌上的整数是\(a_i\)。两个人X和Y将用这副扑克牌玩一个游戏。最初,X手中有一张写有\(Z\)的牌,Y手中有一张
  • 2024-08-23【数据结构】【模板】笛卡尔树
    笛卡尔树定义笛卡尔树每个节点有两种属性,一种是键值,一种是优先级。一般将位置作为键值,维护BST的性质,这样其中序遍历一定为\(1~n\)。一般将数值看作优先级,维护堆的性质。构建思路维护一个单调栈,表示现在的右链长度。我们将数组从前往后插入笛卡尔树。对于第\(i\)个
  • 2024-08-22AtCoder Beginner Contest 048
    A-AtCoder***Contest先输出首字母,然后遍历字符串,遇到空格就输出后面的第一个字符。#include<bits/stdc++.h>usingnamespacestd;usingi64=longlong;intmain(){ ios::sync_with_stdio(false),cin.tie(nullptr); strings; getline(cin,s); cout<<s[0];
  • 2024-08-21AtCoder Beginner Contest 046
    A-AtCoDeerandPaintCans#include<bits/stdc++.h>usingnamespacestd;usingi64=longlong;intmain(){ ios::sync_with_stdio(false),cin.tie(nullptr); set<int>s; for(inti=0;i<3;i++){ intx; cin>>x; s.inser
  • 2024-08-14河南萌新联赛2024第(五)场:信息工程大学
    河南萌新联赛2024第(五)场:信息工程大学前言有点水这场,原题和板子貌似有点多。。A-日历游戏_河南萌新联赛2024第(五)场:信息工程大学(nowcoder.com)思路首先不看年份的话,显然\(8/1\)败,\(7/31\)胜,\(7/30\)败,\(7/29\)胜,\(\dots\),以此类推,就能发现一个\((m+d)\bmod2=0\)\((m
  • 2024-08-14石家庄铁道大学第五届程序设计竞赛
    链接:https://ac.nowcoder.com/acm/contest/66307#question\(\\\)AnA-SOULEllienFanF指定每一位的进制,求\(A+B\)的值,直接模拟即可,复杂度\(O(max(n,\m))\),\(n,m\)为字符串的长度。点击查看代码#pragmaGCCoptimize("unroll-loops,Ofast")#include<bits/stdc++.h
  • 2024-08-13P7561 [JOISC 2021 Day2] 道路の建設案 (Road Construction)
    这篇文章主要讲一下问什么要二分以后还要check(l-1),以及怎么找距离小于等于\(k\)的边的数量。题目给定\(n\)个点,求出任意两个点的曼哈顿距离的集合的前\(k\)大。思路我们先将曼哈顿距离转化为切比雪夫距离:我们知道形如\((x,y)\)点之间的曼哈顿距离等于\((x+y,
  • 2024-08-13P3964 [TJOI2013] 松鼠聚会
    题意给定\(n\)个点,求出一个点使得每个点到这个点的切比雪夫距离之和最小。思路首先,我们可以把题目中的切比雪夫距离转化为曼哈顿距离,因为我们知道形如\((x,y)\)点之间的曼哈顿距离等于\((x+y,x-y)\)点之间的切比雪夫距离,\((x,y)\)点之间的切比雪夫距离等于\(\le