
AC之路
consult_
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
牛牛的字符反转(模拟)
S1第9场 牛牛的字符反转 题目描述: 牛牛酷爱循环右移操作,但是牛牛的电脑寄存器坏掉了,无法实现正常的循环右移操作,只能实现区间反转操作,现在牛牛有一个长度为n的字符串,他想进行循环右移k位的操作,你能告诉牛牛,他最少对这个字符串进行几次区间反转操作能实现循环右移k位呢。反转操作指字符串某一区间[L,R]\left[ L,R \right][L,R]内的字符反转,例如“123456”,区间[3,5]进行反转字符串变为“125436”。假设字符串每一位都不同。给定一个字符串长度n和循环右移次数k,求最少反转原创 2020-08-06 23:25:33 · 334 阅读 · 0 评论 -
F. Sierpinski Triangle
The Sierpinski Fractal (POJ) 打印三角形或正方形其实递归地过程基本都一致; 三角形的基本组成是一个 2 * 4的方格,而正方形是2 * 2的方格。第n个图形是由3个第n-1的图形组成的,接下来就可以递归地由第n个图形的左上角坐标(0,0),根据第n-1个图形的宽和高,计算出第n-1个图形在第n个图形中的三个左上角坐标。直到 n==1 时便可以给画布赋值了; 补充:由于第n个图形的大小是第n-1个的2倍,所以设第一个图形大小为2 * 2时,第n个即为 2n * 2n ; /\原创 2020-07-23 22:19:39 · 181 阅读 · 0 评论 -
EOJ Monthly 2020.7
EOJ Monthly 2020.7 A 打字机 分类讨论,模拟即可 #include<bits/stdc++.h> using namespace std; int main() { int T; cin>>T; while(T--){ string s; cin>>s; int n = s.size(); int i = n-1; while(i>=0&&s[i]!='b') i--; //最后一个b if原创 2020-07-20 10:01:07 · 148 阅读 · 0 评论 -
2020 年 “联想杯”全国高校程序设计在线邀请赛暨第三届上海理工大学程序设计竞赛
比赛平台:EOJ A. Archmage(思维 签到) 题意: 大法师蓝量上限为 n ,每秒可以花费 x 释放一次技能,每秒会自动回蓝 y 点,后结算回蓝,问 m 秒内能最多放几次技能。 思路:所以总共能使用的蓝量为 n+(m-1)*y,除以每次消耗量x即可;(只看最终结果,忽略过程) #include<bits/stdc++.h> using namespace std; int main() { int T; cin>>T; while(T--){ LL n,m,x,原创 2020-06-05 17:22:51 · 469 阅读 · 0 评论 -
牛客练习赛61
比赛入口 A 打怪 模拟一下即可; #include<bits/stdc++.h> using namespace std; int main() { int T; cin>>T; while(T--){ int h,a,H,A; cin>>h>>a>>H>>A; int t = ceil((doubl...原创 2020-04-16 10:03:47 · 141 阅读 · 0 评论 -
UCF Local Programming Contest 2016 (前9题)
题目链接 A. Majestic 10 (签到) B. Phoneme Palindromes (签到) C. Don’t Break the Ice (阅读理解,签到) D. Wildest Dreams (巧妙模拟) E. Loopy Word Search (暴力模拟) F. Dot the i’s and Cross the T’s (直线问题) G. Jedi and the G...原创 2020-04-01 17:54:12 · 354 阅读 · 0 评论 -
字典树 (The 2019 ICPC Shanghai)
B Prefix Code 传送门 字典树: #include<bits/stdc++.h> using namespace std; const int N = 1e5+7; // 树节点个数 int tree[N][11],cnt; bool vis[N]; bool add( char *s ) { int len=strlen(s) , now=0; ...原创 2020-02-19 17:24:55 · 172 阅读 · 0 评论 -
牛客练习赛58
牛客练习赛58 C-矩阵消除游戏 题解:看到题目首先想到的应该是按照题意贪心——每次找行或列中元素和最大的,然后元素值变为零,循环k次。但这样的贪心是错的。 比如: 3 3 2 100 100 1 10 10 1 10 10 1 贪心:(100+100+1)+(10+10+1)=222 答案:(100+10+10)+(100+10+10)=240 每次贪心后元素的值变零对之后的选择产生...原创 2020-03-04 21:00:18 · 183 阅读 · 0 评论 -
2020牛客寒假算法基础集训营1
A - honoka和格点三角形 传送 题意:N*M大小的格点 可以组成多少面积大小为1且顶点在格点上的三角形; #include<bits/stdc++.h> using namespace std; const int mod = 1e9+7; int main() { long long n,m,ans=0; cin>>n>>m; ...原创 2020-02-27 10:49:39 · 175 阅读 · 0 评论 -
组合型枚举(递归及非递归)
93. 递归实现组合型枚举 (从1~n 中挑m个数枚举) 递归(yxc): 优解 #include<iostream> using namespace std; int n,m; void dfs(int k,int sum,int state) { if(sum+n-k<m) return ; //剩下的未选个数不足m个; if(sum==m){ ...原创 2020-02-05 16:27:17 · 639 阅读 · 0 评论 -
sscanf的使用
sscanf函数用法详解 名称: sscanf() - 从一个字符串中读进与指定格式相符的数据. 函数原型: Int sscanf( string str, string fmt, mixed var1, mixed var2 … ); int scanf( const char format [,argument]… ); 说明: sscanf与scanf类似,都是用...转载 2020-02-01 14:36:52 · 155 阅读 · 0 评论 -
2017ACM/ICPC亚洲区沈阳站 L-Tree
2017ACM/ICPC亚洲区沈阳站 L-Tree 传送门 思路:解本题的关键在于题目的理解及问题模型的简化。实质就是DFS跑一遍图,记录每个节点作为根节点时此树的大小,然后计数:有多边满足其上下节点个数均大于或等于k个; 代码: #include<iostream> #include<queue> #include<vector> #include<c...原创 2019-10-13 19:39:12 · 259 阅读 · 0 评论 -
G-Tom爬楼梯
G-Tom爬楼梯 题目描述 样例: 输入: 3 1 1 1 8 1 1 10 2 1 2 输出: 0 13 0 在这里我提供除了递归和dp的另一种解法: 思路: 先判断输入的m个数里是否有n的出现,或者是否有两个连续的数出现,如若有则输出0,继续判断下一组数据;如若不存在上述情况,则将楼梯分成m+1段,分别计算这些段的楼梯都有多少种走法,然后把这走法累乘一下就好了,过程中都要取余; 需要...原创 2019-08-22 00:23:46 · 171 阅读 · 0 评论