ICPC/CCPC
文章平均质量分 62
我wa的一声就哭出来了
不想写题补题就来写题解了555
展开
-
The 15th Jilin Provincial Collegiate Programming Contest
L .Suzuran Loves String题意:给出一串字符串,对所有可能的a、b求max【从a串到b串的最小操作数】a、b均为该字符串的后缀字串对a、b可进行删减、增加的操作。题解:思考肯定尽可能的让a、b长:a字符串取s本身。如果a的前n项等于b的前n项,那这部分是不用进行删去、增加操作的,那么我们就让这部分尽可能短。(力求删去最多)但是仍要保证加上的最多。写几个例子试试可以发现,遇到第一个s[0]不等于s[i],如果b的后缀取i后字符串,此时的操作数为删去a的所有,在加上i后的个数原创 2022-05-19 03:00:00 · 277 阅读 · 0 评论 -
【2021年CCPC河南省赛】闯关游戏
题目:小i正在玩一个闯关游戏,游戏一共n关。初始的时候小i有H点体力以及0个金币。小i只能按从第1关到第n关按顺序完成。在第i关时,小i要在三种操作中选择一种:1.当前体力不小于Ai可以选择这个操作,消耗Ai点体力,获得Bi个金币。2.当前体力不小于Ci可以选择这个操作,消耗Ci点体力,获得Di个金币。3.结束游戏,直接结算。当小i完成全部n个关卡后会自动结束游戏,进行结算。结算时小i最多获得了多少金币?题解:如果没有条件3就是很明显的背包dp。但在3的条件下,可以发现原先背原创 2022-05-03 23:04:46 · 1532 阅读 · 0 评论 -
第 45 届国际大学生程序设计竞赛(ICPC)亚洲区域赛(昆明)
H纯签到,略。L-Simone and graph coloring题意:给出一组数,这组数中所有的逆序对都相连。进行染色操作,相邻不能同色,求出所用最少颜色。题解:【错误思路】e。。最初的思路是用最小堆优先队列,找出如过这个数小于最小了,染色+1。如果这个数大于最小了,必定能与优先队列里的染同一个颜色,不用++。当时推了好多组都对(就觉得思路是对的。。)(其实根本不用优先队列啊。。这个思路只用一个最小值)但其实求出来的颜色数应该没啥问题,赋值颜色出问题pa,不一定是同最小的颜色一致。。。【正原创 2022-04-18 20:37:18 · 234 阅读 · 0 评论 -
【2019|ICPC】西安邀请赛
A - Tasks题解:纯纯的签到。固定的时间内完成的最多的任务数。直接排序后一个个加。#include<bits/stdc++.h>#define ll long long#define sc scanf#define pr printf#define forr(i,b,e) for(int i=b;i<=e;i++) #define tor ::iteratorusing namespace std;const int mod=1e9+7;const int m原创 2022-04-14 19:11:06 · 648 阅读 · 0 评论 -
第46屆ICPC 東亞洲區域賽(澳門)
A.So I’ll Max Out My Constructive Algor…题意:要求上升小于下降的数目,并且全部走一遍。题解:签到题。随便找到一条路,一定是要么上升大于下降,要么下降大于上升。正着不行反着来就好啦。#include<bits/stdc++.h>#define ll long long#define sc scanf#define pr printf#define forr(i,b,e) for(int i=b;i<=e;i++) #define原创 2022-04-12 20:50:27 · 286 阅读 · 0 评论 -
【2021 | ccpc】哈尔滨 B、E、J、I
B. Magical Subsequence题目:给一组序列,从中间【按照顺序】找出最长序列满足题解:【按顺序】:以为是签到题结果没注意这个点,wa了好几发。看到每个元素的最大值不超过100,立马就想到暴力。结果一推是2e7,遂放弃。开始想dp,然后不会。100也太小了,不如冲一冲?两重循环,枚举2~200,即所有可能出现的值,算出每一个值最大成功数目。内循环借助set容器,但是tle,以为自己思路错了暴力走不通就下一题了。然后经过朋友提醒,set容器调用的find函数,内部也应有循环,这样应原创 2022-03-13 01:15:47 · 905 阅读 · 0 评论 -
【2021CCPC- 网络选拔赛】1001、1006、1009
地址:传送门1001 Cut The Wire题目:题意:有从1开始无穷多个数,这些数之间的连线规则如下:对于x:1)与x/2连线2)与3*x+1连线问让n到n+1没有任何线连接要减多少条线?题解:对规则分析1)反着推,就是每一个数都和他的2倍连接的意思,只要它的2倍大于n,那就肯定要剪这条线。其实就是取n/2,如果是奇数还要再+1~2)同理,如果这个数*3+1大于n就要减去。这个操作琐碎一点。#include<bits/stdc++.h>#define ll l原创 2021-09-05 22:22:58 · 274 阅读 · 0 评论 -
2021CCPC- 网络选拔赛(重赛)1002、1004、1006(仅思路)
1002 Kanade Doesn’t Want to Learn CG题意已知球板的位置,球的抛物线方程。求球落进球筐(从上往下穿过)。且球打到bd段会对称反弹。题解:满足条件的情况:1》与a的x相等时在上边,b则在下面(左上右下)2》左上右上。右边低于d高于b。注意:球不能打到板子上。#include<bits/stdc++.h>using namespace std;#define ll long longll a,b,c;ll f(ll x){ return原创 2021-10-23 14:15:26 · 97 阅读 · 0 评论 -
【CCPC 南京站】A、C、M(更新中)
先把题解写一下,补后面的题的时候一块把代码粘上。瞌睡的要死,明天(今天)会改改逻辑不清晰的地方。A题意:求3(n—1)次把所有格子都移动到某位置。题解:首先可以看出要是想把所以方格一起操作,就得移动它到角里是的所有格子重合。如果是任意一个角这有可能超过限定长度。那么就比较一下是否符合题意,或者直接比较谁最短。J题意:三种操作:1》a和b都-12》a和b都+13》a和b除以一个它们的质因数要求a、b都变为1的最小操作数题解:1、2的操作都不影响a与b的差值。c=a-b,枚举c的质因原创 2022-01-09 05:59:04 · 465 阅读 · 0 评论 -
【2021CCPC 威海】A、D、G、J
A. Goodbye, Ziyin!题意:给一个无根树,判断有多少个节点能做二叉树的根。题解:度小于等于2:可做根。度大于3,不可存在二叉树。#include <bits/stdc++.h>using namespace std;#define ll long longconst int maxn=2e6+3;#define sc scanf#define pr printfmap<int,int>num;int main() { int n,a,b;sc原创 2022-01-08 02:06:50 · 1657 阅读 · 1 评论 -
【河南省第十三届ICPC】A\F\I\J\L\M
A-祝融传火题意:找到一个位置满足条件:A[x][y],A[x+H-1][y],A[x][y+W-1],A[x+H-1][y+W-1]均存在且相等分析:签到题,直接遍历,注意不要越界。代码:#include <bits/stdc++.h>using namespace std;#define mod 10e9+7int a[1005][1005];int h,w;int n,m;bool is(int i,int j){ if(i>=1&&i原创 2021-08-18 17:31:39 · 411 阅读 · 4 评论 -
【第46届ICPC上海】非标准题解
题目补不完了所以对大佬的一些AC代码上上注释给自己顺顺思路。E Strange_Integers签到题,直接上代码#include <bits/stdc++.h>using namespace std;const int maxn=1e5+7;#define sc scanf#define pr printf#define ll long longint a[maxn];const int mod=1e6+7;int main() { int n,k;原创 2022-04-01 20:24:06 · 469 阅读 · 0 评论