上一页 1 ··· 14 15 16 17 18 19 20 21 22 ··· 28 下一页
摘要: 题面传送门 思路 因为跑和使用魔法不能同时执行,所以可以先处理光光使用魔法,然后再处理跑的情况 代码 #include<bits/stdc++.h> using namespace std; int m,s,t; int f[300001]; int main(){ scanf("%d%d%d",& 阅读全文
posted @ 2022-06-11 13:44 A_zjzj 阅读(40) 评论(0) 推荐(0)
摘要: 题面传送门 思路 用结构体拍个序,然后输出就可以了。 代码 #include<bits/stdc++.h> using namespace std; int n; struct zj{ int x,y,z,sum,num; bool operator < (const zj &a)const{ if 阅读全文
posted @ 2022-06-11 13:43 A_zjzj 阅读(46) 评论(0) 推荐(0)
摘要: 题面传送门 思路 一看嘛,不就是两遍$dp$,结果标签上写着个单调队列,我怎么想不出来如何单调队列啊。 于是,就只好打了暴力$dp$结果$A$了。 代码 #include<bits/stdc++.h> using namespace std; int n; int a[101]; int f1[10 阅读全文
posted @ 2022-06-11 13:41 A_zjzj 阅读(66) 评论(0) 推荐(0)
摘要: 题面传送门 思路 我明知正解是枚举每一位是否进位然后用高斯消元来验证是否有解。 可是我偏不!!!! 我偏偏$dfs$。 剪枝剪枝+剪枝。 剪枝一:从低位的数开始搜索。 剪枝二:枚举每一个字母是什么数的时候从大到小枚举。 剪枝三:因为每一位最多只会进1,所以判断每一位如果不是这样的就直接$return 阅读全文
posted @ 2022-06-11 13:41 A_zjzj 阅读(35) 评论(0) 推荐(0)
摘要: 题面传送门 思路 本蒟蒻表示:我只会用优先级队列做。 贪心:每一次只要取出最少的两堆合并就可以了。 代码 #include<bits/stdc++.h> using namespace std; int n; priority_queue<long long,vector<long long>,gr 阅读全文
posted @ 2022-06-11 13:39 A_zjzj 阅读(45) 评论(0) 推荐(0)
摘要: 题面传送门 思路 $STL$真好,有两个函数: next_permutation() prev_permutation() 分别是求出数组的下一个排列,和上一个排列。 可以就返回$1$,如果无法操作了,返回$0$ 代码 #include<bits/stdc++.h> using namespace 阅读全文
posted @ 2022-06-11 13:38 A_zjzj 阅读(64) 评论(0) 推荐(0)
摘要: 题面传送门 思路 一道模拟题,注意下细节 代码 #include<bits/stdc++.h> int s,h; int main(){ int x; for(int i=1; i<=12; i++){ scanf("%d",&x); s=s-x+300; if(s<0){ printf("-%d" 阅读全文
posted @ 2022-06-11 13:38 A_zjzj 阅读(53) 评论(0) 推荐(0)
摘要: 题面传送门 思路 因为只有唯一的顺序才完所有的花生,所以直接模拟即可 代码 #include<bits/stdc++.h> using namespace std; int n,m,t; int k; struct zj{ int x,y,sum; bool operator < (const zj 阅读全文
posted @ 2022-06-11 13:37 A_zjzj 阅读(73) 评论(0) 推荐(0)
摘要: 题面传送门 思路 直接$dfs$,注意要输出后序,即为先左子树再右子树最后根 代码 #include<bits/stdc++.h> using namespace std; int n; string a; void dfs(int l,int r){ if(l<r){ dfs(l,(l+r)>>1 阅读全文
posted @ 2022-06-11 13:37 A_zjzj 阅读(28) 评论(0) 推荐(0)
摘要: 题面传送门 思路 一道模拟题,直接打擂台即可 代码 #include<bits/stdc++.h> using namespace std; int n,k,maxx; int x,y; int main(){ for(int i=1;i<=7;i++){ cin>>x>>y; if(x+y>max 阅读全文
posted @ 2022-06-11 13:36 A_zjzj 阅读(59) 评论(0) 推荐(1)
上一页 1 ··· 14 15 16 17 18 19 20 21 22 ··· 28 下一页