随笔分类 -  小技巧

摘要:小A和小B在玩一个游戏。 首先,小A写了一个由0和1组成的序列S,长度为N。 然后,小B向小A提出了M个问题。 在每个问题中,小B指定两个数 l 和 r,小A回答 S[l~r] 中有奇数个1还是偶数个1。 机智的小B发现小A有可能在撒谎。 例如,小A曾经回答过 S[1~3] 中有奇数个1, S[4~ 阅读全文
posted @ 2021-02-01 09:13 君与 阅读(58) 评论(0) 推荐(0)
摘要:有一个划分为N列的星际战场,各列依次编号为1,2,…,N。 有N艘战舰,也依次编号为1,2,…,N,其中第i号战舰处于第i列。 有T条指令,每条指令格式为以下两种之一: 1、M i j,表示让第i号战舰所在列的全部战舰保持原有顺序,接在第j号战舰所在列的尾部。 2、C i j,表示询问第i号战舰与第 阅读全文
posted @ 2021-01-31 16:35 君与 阅读(76) 评论(0) 推荐(0)
摘要:#include<bits/stdc++.h> using namespace std; const int N=1e6+5; int f[N*2],a[N],b[N],c[N],n,t,p[N*2],cnt; int find(int x) { if(x!=f[x])f[x]=find(f[x]) 阅读全文
posted @ 2021-01-31 16:32 君与 阅读(60) 评论(0) 推荐(0)
摘要:#include<bits/stdc++.h> #define N 10010 using namespace std; int fa[N],v[N],pr[N]; int vv[N],pp[N],f[N]; int n,m,w,cut; int found(int x) { if(fa[x]!=x 阅读全文
posted @ 2021-01-31 15:45 君与 阅读(65) 评论(0) 推荐(0)
摘要:#include<bits/stdc++.h> using namespace std; int n,m; int fa[1000000]; int found(int x) { if(fa[x]!=x)fa[x]=found(fa[x]); return fa[x]; } int main() { 阅读全文
posted @ 2021-01-31 15:16 君与 阅读(60) 评论(0) 推荐(0)
摘要:监狱有连续编号为1~n的n个房间,每个房间关押一个犯人。有 M种宗教,每个犯人可能信仰其中一种。如果相邻房间的犯人信仰的宗教相同,就可能发生越狱。求有多少种状态可能发生越狱。 #include<bits/stdc++.h> #define MOD 100003 #define ll long lon 阅读全文
posted @ 2021-01-31 08:26 君与 阅读(60) 评论(0) 推荐(0)
摘要:BSNY 在学等差数列和等比数列,当已知前三项时,就可以知道是等差数列还是等比数列。 现在给你 整数 序列的前三项,这个序列要么是等差序列,要么是等比序列,你能求出第k项的值吗。 如果第k项的值太大,对其取模200709。 #include<bits/stdc++.h> #define MOD 20 阅读全文
posted @ 2021-01-29 16:50 君与 阅读(67) 评论(0) 推荐(0)
摘要:从前有个人名叫 WNB,他有着天才般的记忆力,他珍藏了许多许多的宝藏。 在他离世之后留给后人一个难题(专门考验记忆力的啊!),如果谁能轻松回答出这个问题,便可以继承他的宝藏。 题目是这样的:给你一大串数字在你看过一遍之后,它便消失在你面前,随后问题就出现了,给你m 个询问,每次询问就给你两个数字,要 阅读全文
posted @ 2021-01-29 11:35 君与 阅读(77) 评论(0) 推荐(0)
摘要:依次读入一个整数序列,每当已经读入的整数个数为奇数时,输出已读入的整数构成的序列的中位数。 #include<bits/stdc++.h> using namespace std; priority_queue<int> down; priority_queue<int,vector<int>,gr 阅读全文
posted @ 2021-01-29 11:08 君与 阅读(61) 评论(0) 推荐(0)
摘要:七夕节因牛郎织女的传说而被扣上了「情人节」的帽子。 于是TYVJ今年举办了一次线下七夕祭。 Vani同学今年成功邀请到了cl同学陪他来共度七夕,于是他们决定去TYVJ七夕祭游玩。 TYVJ七夕祭和11区的夏祭的形式很像。 矩形的祭典会场由N排M列共计N×M个摊点组成。 虽然摊点种类繁多,不过cl只对 阅读全文
posted @ 2021-01-29 11:06 君与 阅读(70) 评论(0) 推荐(0)
摘要:给定一个长度为n的数列每次可以选择一个区间 [l,r],使下标在这个区间内的数都加一或者都减一。 求至少需要多少次操作才能使数列中的所有数都一样,并求出在保证最少次数的前提下,最终得到的数列可能有多少种。 #include<bits/stdc++.h> #define ll long long us 阅读全文
posted @ 2021-01-22 17:17 君与 阅读(69) 评论(0) 推荐(0)
摘要:地图上有n个目标,用整数x,y表示目标在地图上的位置,每个目标都有一个价值Wi. 注意:不同目标可能在同一位置。 现在有一种新型的激光炸弹,可以摧毁一个包含r个位置的正方形内的所有目标。 激光炸弹的投放是通过卫星定位的,但其有一个缺点,就是其爆炸范围,即那个正方形的边必须和坐标轴平行。 求一颗炸弹最 阅读全文
posted @ 2021-01-22 17:11 君与 阅读(131) 评论(0) 推荐(0)