![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
codeforce
兜率工
XJTU 硕士研究生在读
展开
-
Students in Railway Carriage
这个题有点坑; 刚开始想的就是先先放人数多的,然后见了*后再接着放人数多的,但一直wa在第十组数据,无语,不过关键在于逻辑思维能力还是不是很强,并且所见题型也不是特别多,导致代码写得非常繁琐。 思路还是上面那个,但就是实现起来用一个变量pos进行标记,如果a>b则pos=1,否则pos=0.这样就明确区分出了a跟b哪个大哪个小。下面判断条件也很好写出。如果遇到*就再进行这样一次判...原创 2018-04-11 20:45:51 · 183 阅读 · 0 评论 -
CodeForces - 1141F2 Same Sum Blocks (Hard)
题意:在是数列中找到数量最大的子区间使得每个子区间和相同。子区间不重叠。分析:求出每个区间的和,然后记录每个和都有哪些区间,保存即可,同时注意判断区间是否相交,最后求出数量最多的即可。总结下自己失败的原因,比赛时候思路有问题,就拿easy来说,枚举了所有和的情况,然后根据和进行尺取。但是最后发下头指针无法修改。想想也是,直接将所有区间和求出来,然后记录这个和的区间。最后求出最大,就...原创 2019-03-21 21:14:35 · 374 阅读 · 0 评论 -
CodeForces - 915E 动态开点线段树||离散化线段树
题意:给定1-n的一段空区间,每次给出 x y z 的询问,z == 1 时将 x - y 区间全部填充,否则为空,问最后一共有多少空区间分析:很明显的线段树题目,不过主要是想学习以下动态开点,不过数组范围自己一时间也还不懂怎么处理。看cf上很多大佬STL做的,很是骚,%%%#include<bits/stdc++.h>using namespace st...原创 2018-10-30 19:59:33 · 546 阅读 · 0 评论 -
CodeForces - 814C An impassioned circulation of affection 尺取法
简化版题目就是这个题:https://blog.csdn.net/qq_40679299/article/details/83035427然后直接尺取就好。#include<bits/stdc++.h>using namespace std;const int maxn=1600;char a[maxn];int main(){ int n,k,q;...原创 2018-10-13 09:31:47 · 122 阅读 · 0 评论 -
Codeforces Round #486 (Div. 3) E Divisibility by 25
刚开始写的时候没有考虑最前面一位是0的情况。 但发现问题过后又不会改正了,所以参考别人的,再换了种思路,直接模拟就好了。#include <bits/stdc++.h>using namespace std;string str,s;const int MAXN=999999;int fun(char a,char b){ s=str; bool ...原创 2018-06-02 14:58:29 · 264 阅读 · 0 评论 -
Codeforces Round #486 (Div. 3) D. Points and Powers of Two
不懂这个怎么整出来的。。。 虽然在纸上画了画,能懂个意思了,但还是心里不踏实u。#include <bits/stdc++.h>#include <set>using namespace std;typedef long long int ll;int main(){ set<ll>s; int n; cin>>...原创 2018-06-02 11:52:26 · 364 阅读 · 0 评论 -
Codeforces Round #486 (Div. 3) B. Substrings Sort
第一次做的时候傻逼了。用了ac自动机,虽然刚开始ac了,但最后却被hack了,今天在早上醒来,看见别人写的代码,突然恍然大悟,原来这么简洁,stl就是强大,还是自己水平有限。#include<bits/stdc++.h>using namespace std;int main(){ vector<pair<int,string> > v;...原创 2018-06-02 09:26:21 · 234 阅读 · 0 评论 -
Codeforces Round #487 (Div. 2) C. A Mist of Florescence(构造算法)
采用这种构图方式进行图形的构建。 其实是左边构造偶数块,右边构造奇数块,而且左右两边也能保证原来图形之间是联通的,新构造出来的块之间彼此独立,感觉跟四叉树有点像.#include<bits/stdc++.h>const int maxn=55;char mmp[maxn][maxn];void push(int x1,int y1,int x2,int y2,...原创 2018-06-12 20:33:20 · 133 阅读 · 0 评论 -
Divide by Zero 2018 and Codeforces Round #474 (Div. 1 + Div. 2, combined)D. Full Binary Tree Queries
二叉树的每一层进行旋转。#include<bits/stdc++.h>#define ll long longusing namespace std;const int maxn = 65;ll Move1[maxn];///正移动偏移量,方便知道原节点去了哪个位置void op1(int lay,ll move,ll x,ll times){ if(x) l...原创 2018-06-04 16:36:11 · 202 阅读 · 0 评论 -
Divide by Zero 2018 and Codeforces Round #474 (Div. 1 + Div. 2, combined) B. Minimize the error
数据结构+贪心 对a,b两个数组中的元素相减进行排序,因为要计算每个操作之后(设为u)的平方和最小,所以u的绝对值最大的数进行操作(也就是减1),这样才能保证最后和最小.#include <stdio.h>#include<iostream>#include<stack>#include<queue>#include<algo...原创 2018-06-03 23:22:22 · 204 阅读 · 0 评论 -
C. Finite or not? Codeforces Round #483 (Div. 2)该进制下的分数是不是有限循环小数。
/*判断该进制下的分数是不是有限循环小数。方法: 将分子分母化为最简,判断分母在该进制下是否能化掉 因为由十进制小数化为其他进制小数的经验可以看出来 该小数不断乘以一个数取整数位,最后将小数化为0 取出来的个整数位即为该进制下的小数表示,所以由此可知 该分数不断乘以这个进制数,如果分母最后能消掉,则 该进制下的分数是有限循环小数。*/#i...原创 2018-05-16 18:26:48 · 437 阅读 · 2 评论 -
C. Liebig's Barrels( Educational Codeforces Round 44 (Rated for Div. 2))
题目链接 刚开始想的有点复杂,一直wa了,最后看了大佬们的题解,才恍然大悟,原来就是一道贪心,硬生生做成模拟了,还写的特别麻烦,半天想不出来,最后写出来还是错的,以后遇到这种情况,就得换个思路重新思考,不能一根筋走到黑,到头来还是一场空。解决本题的思路: 从后往前进行计算,因为要计算最大的容积,所以采用排序后从后往前计算,加上限制条件,从而进行判断。//贪心。#include...原创 2018-05-22 01:38:10 · 280 阅读 · 0 评论 -
CodeForces 1183H Subsequences (hard version) DP
题意:给出一个字符串删除一些字符使得子串个数是K,并且代价最小,代价为删除的字符数量。分析:表示前i个字符,删除j个后一共有多少种情况如果不考虑重复很容易得出 即当前字符删不删两种情况如果有重复的话,比如abcdgefg ,下标从1开始,那么i=8与k=5相同,如果当前删除的字符是j=3个的话,那么删除 gef 和删除 efg所得的结果相同。多算了abcdg一次,...原创 2019-06-29 16:36:05 · 447 阅读 · 0 评论