自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(65)
  • 收藏
  • 关注

原创 Hamster Farm

仓鼠农场 - CodeForces 939B - 虚拟法官 (csgrandeur.cn)以后初始化无穷再也不inf=0x3f3f3f3fl了,具体要看题目给的数据范围#include<bits/stdc++.h>#define x first#define int long long#define gcfx main#define y second#define mak make_pair#define IOS ios::sync_with_stdio(false),

2022-05-27 10:52:46 169

原创 Prinzessin der Verurteilung(bfs STL)

谴责公主 - CodeForces 1536B - 虚拟法官 (csgrandeur.cn)(29条消息) codeforces 1536B. Prinzessin der Verurteilung(1200)_Theiar的博客-CSDN博客题意:求字典序最小的且不是给定字符串中连续字符组成的子串的字符串暴力求一个字符串的全部连续字符子串set<string> st;for(int i=0;i<s.size();i++) { for(int j=1;i+j&lt

2022-05-27 10:48:13 205

原创 Suit and Tie (在线swap 贪心 思维)

(29条消息) 贪心背后的故事Codeforces 995B(Suit and Tie)_♡-流浪孩的博客-CSDN博客Suit and Tie - CodeForces 995B - Virtual Judge (csgrandeur.cn)题意:思路:将改变后的位置变为一个特殊的位置比如0,在模拟排座位过程#include<bits/stdc++.h>#define x first#define gcfx main#define y second#define m.

2022-05-27 10:39:10 155

原创 Turing Tape (推公式 模拟)

Turing Tape - CodeForces 132A - Virtual Judge (csgrandeur.cn)题意:记录一个数字的前n个二进制数表示的十进制数 int t=s[i]; LL y=0; for(int j=1;j<=n;j++) { y=y*2+t%2; t/=2; }思路:记录每个字符的前八个2进制反转表示的十进制数,再模拟推公式即可 ...

2022-05-27 10:32:54 118

原创 Rebranding (字典序替换 思维)

Rebranding - CodeForces 591B - Virtual Judge (csgrandeur.cn)题意:给你一个字符串,和q个查询,每个查询替换两个字母,求更改后的字符串思路:想暴力在线去做?对不起,TLE了,呜呜呜,如果只是更换两个字母的话就根本没有改变它们在字典序中的位置,那么如果想要去模拟字母更换的过程而不考虑字典序的问题的话对我来说是比较困难的,于是我采用了在查询的时候更换字符在字典的位置,那么在离线求一遍字符串就行了#include<bits/stdc++

2022-05-27 10:02:13 133

原创 Sasha and a Bit of Relax K倍区间 (前缀和异或 前缀和计数 思维)

(29条消息) CodeForces - 1109A Sasha and a Bit of Relax(思维+异或和,好题)_Frozen_Guardian的博客-CSDN博客Sasha and a Bit of Relax - CodeForces 1109A - Virtual Judge (csgrandeur.cn)题意:思路:很容易想到前缀和,且这是一道计数题,不需要知道具体的每对情况,所以这里我选择考虑以区间右端点来记录每一种情况,想要构成r-l+1为偶数,那么区间的左右端点必然是同奇.

2022-05-27 09:49:55 102

原创 Common Prefixes (思维)

通用前缀 - CodeForces 1384A - 虚拟判断仪 (csgrandeur.cn)题意:给你一个数组,数组元素记录的是字符串的公共前缀,你需要对于每个元素构造一个字符串满足要求思路:筛出数组元素种最大值+1,模拟构造过程即为前i个字符都是相同的,那么我们只需要在a[i]+1个位置进行改动,那么就满足条件了#include<bits/stdc++.h>#define x first#define gcfx main#define y second#define m

2022-05-27 09:22:16 130

原创 Save More Mice (贪心 二分)

贪心code#include<bits/stdc++.h>#define x first#define gcfx main#define y second#define mak make_pair#define IOS ios::sync_with_stdio(false),cin.tie(0),cout.tie(0)#define debug(a) cout<<a<<'\n'#define endl '\n'#define umap unorder

2022-05-19 22:39:46 137

原创 AvtoBus(思维)

AvtoBus - CodeForces 1679A - 虚拟判断仪 (csgrandeur.cn)思路:4*x+6*y=n;故2*x+3*y=n/2,1≤x≤y,故n一定能被2整除,且n>=4x=n/4,y=n/6,

2022-05-19 22:37:05 241

原创 Aramic script (双重set)

Aramic script - CodeForces 975A - Virtual Judge (csgrandeur.cn)code#include<bits/stdc++.h>#define x first#define y second#define mak make_pair#define IOS ios::sync_with_stdio(false),cin.tie(0),cout.tie(0)#define debug(a) cout<<a<&l

2022-05-17 10:46:16 122

原创 Social Distance (思维 贪心)

社交距离 - CodeForces 1668B - 虚拟裁判 (csgrandeur.cn)题意:n个人,给定围成圈的m个座位,有n个人入座,每个人的座位两边都需要空出来a[i]个座位,问能否满足思路:排序,拆分圆为一个一条直线,一个满足条件的序列应该这样满足:code#include<bits/stdc++.h>#define x first#define y second#define mak make_pair#define IOS ios::sync_wit

2022-05-15 20:15:05 204

原创 Infinite Replacement (思维)

无限替换 - CodeForces 1674C - 虚拟裁判 (csgrandeur.cn)题意:给你a串和b串,a串中每一个字符'a'可以换成b串(也可以不用换),问可以通过更换得到多少个不同的a串,如果可以得到无数个a串输出-1没有注意到可以不用换的条件,wa了一次code#include<bits/stdc++.h>#define x first#define y second#define mak make_pair#define IOS ios::sync_w

2022-05-13 14:50:04 338

原创 A-B-C 排序(思维)

A-B-C 排序 - CodeForces 1674D - 虚拟裁判 (csgrandeur.cn)参考题解:(20条消息) Codeforces Round #786 (Div. 3)_qianhaodong的博客-CSDN博客code#include<bits/stdc++.h>#define x first#define y second#define mak make_pair#define IOS ios::sync_with_stdio(false),cin..

2022-05-13 14:25:35 119

原创 Detective Task(思维)

Detective Task - CodeForces 1675C - Virtual Judge (csgrandeur.cn)题意:有一副画被一个小偷偷了,小偷在n个人当中,每个人都会说一句话:否(0)表示在他进入房间内没有看到画; 是(1)看到; 不记得(?)不知道;找出可疑人数思路:找到最后说1和最开始说0的区间,小偷肯定在这个区间内需要特判一开始说1和最后说0,和只有一个人的情况,因为这些情况小偷一定是这个人code#include<bits/stdc+.

2022-05-13 11:38:01 415 3

原创 X-Sum(暴力 规律记录)

X-Sum - CodeForces 1676D - Virtual Judge (csgrandeur.cn)走四个方向的sum:LL check(int x,int y){ LL sum1=0; for(int i=x+1,j=y+1;i<=n&&j<=m;i++,j++) sum1+=a[i][j]; for(int i=x,j=y;i>0&&j>0;i--,j--) sum1+=a[i][j]; for(int i=..

2022-05-12 23:42:02 146

原创 Eugeny and Play List(双指针 前缀和 二分)

Eugeny and Play List - CodeForces 302B - Virtual Judge (csgrandeur.cn)题意:给定歌曲和播放时间和播放次数,求出某一分钟在播放那首歌曲加深了对二分的理解code1:双指针#include<bits/stdc++.h>using namespace std;const int N=1e5+10;typedef long long LL;struct node{ LL x,y;}a[N];LL...

2022-05-12 16:54:35 135

原创 Book Reading(打表找规律 思维)

Book Reading - CodeForces 1213C - Virtual Judge (csgrandeur.cn)题意:给出两个数n,m,求在1到n中m的倍数的数的个位数字之和。打表:n=45,m=3;n=96,m=7;易得之所有被m整除的数都有一个循环序列,这个序列的上限是lcm(m,10)思路:对于可以被整除得到得序列,直接加上序列的答案,然后再加上不能构成循环序列的答案。code#include<bits/stdc++.h>#defi

2022-05-12 10:56:21 124

原创 Messages(数学概率 思维)

Messages - CodeForces 1612E - Virtual Judge (csgrandeur.cn)Educational Codeforces Round 117 (Rated for Div. 2) A~E、G - 知乎 (zhihu.com)#include<bits/stdc++.h>#define x first#define y second#define mak make_pair#define IOS ios::sync_with_..

2022-05-11 13:10:43 166

原创 Double Profiles(哈希表)

Double Profiles - CodeForces 155E - Virtual Judge (csgrandeur.cn)题意:给一张无向图,问有多少点对(A,B)的边完全相同. N,M ≤100000A,B出边相同,当且仅当A连接的每一条边的另一个端点也和B直接相连 B连接的每一条边的另一个端点也和A相连若A,B直接相连,不妨碍以上性质思路:一个点对要是相同的,那么两个点所连接的所有点必然是相同的,我们可以把每个点稀释成一个哈希值,那么两个点所有邻边的哈希值之和应该是相同的

2022-05-10 22:01:09 101

原创 Double Happiness (筛素数 费马二平方定理 bitset优化)

双重幸福 - 代码强制 113C - 虚拟裁判 (csgrandeur.cn)费马二平方定理:所有素数可以表示为4k + 1,4k + 3(2除外),表示为4k + 1的数可以被表示为a^2 + b ^2。bitset优化:bitset - OI Wiki (oi-wiki.org)题意: 区级[l,r]内有多少素数满足拆成两数平方和,记录总数需要特判2code:#pragma GCC optimize(1)#pragma GCC optimize(2)#pragma GC

2022-05-10 12:49:23 268

原创 Petya and Exam(字符串模拟)

Petya and Exam - CodeForces 832B - Virtual Judge (csgrandeur.cn)题意:给你一个好的字符串和一个模式串,模式串里面的?可以替换成任意的好的字符,*可以替换成0个字符或者是一个坏的字符串,给你n个操作,每次给出一个字符串,问你可不可以将模式串变成这个字符串。code:​#include<bits/stdc++.h>using namespace std;const int N=2e5+10;string a,b;

2022-05-10 12:21:24 135

原创 k-Multiple Free Set(set 二分)

k-Multiple Free Set - CodeForces 274A - Virtual Judge (csgrandeur.cn)题意:给你一个数组和一个值k,定义一个集合表示的是一组整数,其中没有一个整数等于另一个整数乘以k,求这个整数的最大数量。思路:集合里如果有x,一定不能有k倍的x。解法1:set#include<bits/stdc++.h>#define int long longusing namespace std;const int N=1e5+1

2022-05-10 12:13:04 181

原创 GXUST训练报告

A.COW题意:tags:模拟思路:对于C,它无法和前面所有任何组合组成COW,对于O,同理也不行,但是O可以和C组成CO串,到后面枚举到W时,CO可以和W组成COW串。综上所述,我们可以记录C,CO串的个数,每个O可以和前面的C串组成CO,W和前面的CO串组成COW,因此COW的个数就是当匹配到后面有W字符时,前面CO串的个数,而CO串表示的是当匹配到O时前面前面C的个数rescow=resc+resco;code#include<bits/stdc++.h>.

2022-05-09 11:19:55 381

原创 补题补题补题

Blocked Roads - AtCoder abc218_f - Virtual Judgetags:dijkstra题意:给你一个有向图,在去除一条边后,求源点到n的最短路 2≤N≤400 1≤M≤N(N−1) TLE:m(o(n*n+m)超时#include<iostream>#include<algorithm>#include<cstring>#include<map>#define x first#de

2022-05-05 15:03:22 230

原创 cf自我训练

I love AAAB - CodeForces 1672B - Virtual Judge题意:判定一个字符串可不可以从好的字符串转换过来如果字符串的长度至少为2,它的所有字符都是A,除了最后一个字符是B.好的字符串是AB,AAB,AAAB,....请注意,BB不是一个好的字符串。系统将为您提供一个初始空字符串s1​.您可以执行以下操作任意次数: 选择任何位置s1​并在该位置插入一些好的字符串。 给定一个字符串s2​,我们可以转动吗s1​到s2​经过一些操作?思路:判..

2022-05-03 18:54:28 561

原创 补题补题补题

Strange Table - CodeForces 1506A - Virtual JudgeTAG:数学n为总行数, m为总列数数学公式:得到res的坐标,横行顺序排列:x=(res-1)/m+1,y=(res-1)%m+1,值的坐标(x,y),得到值:res=x*m+y;得到res,竖行顺序排列:x=(res-1)/n+1,y=(res-1)%n+1,值的坐标(y,x)下标从0开始不用-1,得到值:res=y+(x-1)*n;下标从0开始不用减1#include&lt

2022-05-01 18:28:23 317

原创 补题补题补题

Cinema - CodeForces 670C - Virtual JudgeTAG: map离散化题意:有n个人,每个人都有一种语言,去看m种电影,每部电影都有两种语言,声音语言和字幕语言,若有人的语言与声音语言一样,则称这个人很高兴♂.若有人的语言与字幕语言一样,则称这个人比较高兴.现让你选择一场电影,使得此电影中,很高兴的人最多,在此条件下,再使比较高兴的人最多.思路:由于这题语言的种类有1e9种,而人和电影的两种语言总共才6e5,所以考虑map离散化,再一步步模拟即可.

2022-04-30 00:35:23 272

原创 Codeforces Round #784 (Div. 4)

Problem - C - Codeforces题意:给定任意次变换(下标为奇数的集体+1或者是下标为偶数的集体+1),判断是否有可能将下标为奇数的元素全部变成奇数,下标为偶数的元素全部变成偶数思路:如果下标为奇数或者偶数的元素同时存在奇数或者偶数,那么必定不能通过转换变成完全是奇数或者是偶数,反之,则可以#include<bits/stdc++.h>#define x first#define y second#define IOS ios::sync_with_std

2022-04-30 00:25:52 460

原创 补题(2022东北四省 选拔赛)

思维 找规律题意:给定N*N的正方形,每个位置上有一个价值,你可以通过走八个偏移量,每次只能走一步,求出让所有价值附加在一点上的最小步数思路:对于所有价值我们可以全部集合到最中间的那个点上。#include<bits/stdc++.h>using namespace std;#define int long lon.

2022-04-18 16:24:16 345

原创 P2820 局域网

题目背景某个局域网内有n(n \le 100)n(n≤100)台计算机,由于搭建局域网时工作人员的疏忽,现在局域网内的连接形成了回路,我们知道如果局域网形成回路那么数据将不停的在回路内传输,造成网络卡的现象。因为连接计算机的网线本身不同,所以有一些连线不是很畅通,我们用f(i,j)f(i,j)表示i,ji,j之间连接的畅通程度,f(i,j)f(i,j)值越小表示i,ji,j之间连接越通畅,f(i,j)f(i,j)为00表示i,ji,j之间无网线连接。题目描述需要解决回...

2022-04-14 09:56:31 137

原创 P2330 [SCOI2005]繁忙的都市

题目描述城市C是一个非常繁忙的大都市,城市中的道路十分的拥挤,于是市长决定对其中的道路进行改造。城市C的道路是这样分布的:城市中有n个交叉路口,有些交叉路口之间有道路相连,两个交叉路口之间最多有一条道路相连接。这些道路是双向的,且把所有的交叉路口直接或间接的连接起来了。每条道路都有一个分值,分值越小表示这个道路越繁忙,越需要进行改造。但是市政府的资金有限,市长希望进行改造的道路越少越好,于是他提出下面的要求:1.改造的那些道路能够把所有的交叉路口直接或间接的连通起来。 2.在满足要求1的情况下,改造

2022-04-14 09:36:04 118

原创 P1546 [USACO3.1]最短网络 Agri-Net

题目背景Farmer John 被选为他们镇的镇长!他其中一个竞选承诺就是在镇上建立起互联网,并连接到所有的农场。当然,他需要你的帮助。题目描述FJ 已经给他的农场安排了一条高速的网络线路,他想把这条线路共享给其他农场。为了用最小的消费,他想铺设最短的光纤去连接所有的农场。你将得到一份各农场之间连接费用的列表,你必须找出能连接所有农场并所用光纤最短的方案。每两个农场间的距离不会超过10^5105。输入格式第一行农场的个数NN(3 \leq N \leq 1003≤N≤100)。..

2022-04-14 09:10:34 267

原创 PTA 7-1 优异生查询(类和对象) (15 分)

题目: 编程实现查找优异生的功能——用户输入多个学生的成绩,输出总分最高的学生姓名和各科成绩要求: 设计一个学生类(Student),包括1)属性:姓名(name),数学成绩(mscore),语文成绩(cscore),英语成绩(escore);2)方法:构造方法,来构造每个具体的学生对象 计算总成绩方法getSum(self),返回三个成绩的和 获得优异生姓名,数学成绩,语文成绩,英语成绩的方法getBest(self),返回4个结果内容(优异生姓名,数学成绩,语文成绩,英语成绩)输入

2022-04-12 22:54:07 998

原创 AcWing 1241. 外卖店优先级

1241. 外卖店优先级 - AcWing题库参考文献:AcWing 1241. 外卖店优先级 - AcWingyxc老师思路:思路:1.输入数对,排序,先按时间排,再按那个外卖店排2.枚举订单信息,首先我们判断同一时间有没有相同外卖店的订单,然后处理这些外卖店经过t时间的订单数变化,然后再处理这个时候加入的订单数的影响,更新这个店出现的时间3.最后再判断所有外卖店在所有T时间内的订单数目变化,最后再判断是否是优先缓存4.统计所有符合优先缓存的店家#includ..

2022-03-21 23:22:03 119

原创 ACM训练补题

题目-最少01翻转次数 (51nod.com)(思维 前缀和 后缀和 枚举)参考文献:(27条消息) 51nod 2517 最少01翻转次数_林子盛吧(✪ω✪)的博客-CSDN博客思路:序列不降的情况有三种:假设元素有6个000000 000111 111111也就是选定一个位置把此位置之前的1翻转为0,之后的1翻转为0以保证序列不降。因此我们枚举整个区间,对于每个ai,枚举前面有多少个1,后面有多少个0,因此我们利用前缀和和后缀和来统计每个位置ai的所有情况这样对于每个位置情况预处

2022-03-21 11:33:29 334

原创 ACC 补题(贪心 枚举 思维 二分答案)

题目链接:4377. 农田灌溉 - AcWing题库思路:在两个洒水器之间最中间的农田是最晚被洒水的,因此我们只需要枚举两个相邻的洒水器,每次判断最大值即可,最后再特判特殊情况(第一个和最后一个洒水器)#include<bits/stdc++.h>using namespace std;const int N=210;int n,m;int p[N];int main(){ int t; cin>>t; while(t--)

2022-03-21 10:19:41 76

原创 AcWing 2060. 奶牛选美 (DFS 枚举)

2060. 奶牛选美 - AcWing题库yxc代码AcWing 2060. 奶牛选美 - AcWing题意:上下左右连通的点X被看做一个连通块,现在有两个连通块,求两个连通块的最小曼哈顿距离P(xP,yP),Q(xQ,yQ)两点间的曼哈顿距离的计算方法: Manhattan(P,Q)=|xP−xQ|+|yP−yQ|思路:dfs找出两个连通块包含的点,然后分别枚举两个连通块各点 到另外连通块点的曼哈顿距离,取最小值#include<bits/stdc++...

2022-03-09 20:38:45 96

原创 AcWing 1209. 带分数(DFS 递归 枚举)

1209. 带分数 - AcWing题库yxc题解AcWing 1209. 带分数 - AcWing题意:给定一个数,将它写成带分数的形式,每个数字不重复,计算有多少种方案思路:对于方程n=a+b/c,将它变为n*c=a*c+b,所以b=n*c-a*c;我们现在只需要枚举a和c,将枚举转化为全排列问题,对于每次枚举完a后,接着枚举c,再通过判断方程是否成立。参考代码#include<bits/stdc++.h>using namespace std;typede

2022-03-09 00:40:06 264

原创 POJ - 1502 MPI Maelstrom

​​​​​​MPI Maelstrom - POJ 1502 - Virtual Judge (csgrandeur.cn)涉及算法:快读,dijkstra,链式前向星快读模板 - AcWingPOJ 1502 - MPI Maelstrom(链式前向星 + dijkstra模板题)题意:从司令部可以走出若干个成员,每个成员去给其他营的保信,问什么时候所有营知道消息思路:dijkstra跑一遍最短路,求出所有点到源点的距离,再把其中最大的距离拿出来就是所有营地都接收.

2022-03-08 15:19:31 298

原创 AcWing 95. 费解的开关

95. 费解的开关 - AcWing题库题目大意:给定5x5的矩阵,元素全为1或0,判断是否可以在6步以内将所有的0换成1(每改变一次,其相邻位置的元素也要改变)1->0,0->1,如果可以,输出最小步数,否则输出-1解题思路:对于每1盏灯,其都可以有两种操作,一个是按,一个是不按,所以对于一行元素来说总共有2的5次方次操作,二进制表示范围为00000~11111,我们对第一行元素枚举所有情况,每次将为0的灯点亮,下一行位置就会变暗,我们每次都用下一行来改变上一行的状态(将0变为1),枚

2022-03-07 21:18:18 289

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除