B: 思路: 暴力,每两个判断一下; C: 思路: 容斥定理,先枚举脖子下面那个点和那个不可描述的点,算出所有的方案数,这里面有多的腿当成了脖子或者胳膊的,然后就再枚举这种情况把这些减去,又减多了; 再把那些两条腿都连在上半身的加上; D: 思路: 分块+前缀和,把sqrt(n)个数字放在一个块里面,预处理块与块之间的贡献,点与块之间的贡献,然后求出前缀和,询问的时候把多余的每凑到一个完整块的拿出来预处理,再把情况分一分就好啦; E: 思路: 水题,随便搞; F: 思路: 二分+前缀和,枚举最后…
B. Pen Pineapple Apple Pen Solved. 题意:将一个序列合并成一个数. 思路:分类讨论一下, 水. #include<bits/stdc++.h> using namespace std; ; char str[maxn]; bool solve() { ); ) return true; == ) len = len >> ; ) return false; len = strlen(str + ); ; i <= len; i += ) ]…
2016-2017 CT S03E06: Codeforces Trainings Season 3 Episode 6 比赛连接: http://codeforces.com/gym/101124/ 代码地址 http://git.oschina.net/qscqesze/Acm/tree/master/contest/2016-2017%20CT%20S03E06%20Codeforces%20Trainings%20Season%203%20Episode%206?dir=1&filepa…
链接:http://codeforces.com/gym/101116 学弟写的,以后再补 #include <iostream> #include <algorithm> #include <stdio.h> #include <cstring> #include <map> #include <vector> using namespace std; map<string,int>v,ans; vector<in…
链接:http://codeforces.com/gym/101116 题意:给出n个点,要求一个矩形框将(n/2)+1个点框住,要面积最小 解法:先根据x轴选出i->j之间的点,中间的点(包括两边)按照y排序,固定一边X=(xj-xi),Y就枚举点两端的Y坐标,细节是注意要取(n/2)+1个点 事实上这样取里面一定符合要求 #include <iostream> #include <cstdio> #include <algorithm> #include &l…
链接:http://codeforces.com/gym/101116 题意:选六个数,必须出现次数最多,且数字最小,如果出现7优先加入7 解法:排序,出现7优先加入7,最后再将6个数排序 #include<bits/stdc++.h> using namespace std; struct P { int num,pos,M; }He[1000]; bool cmd(P a,P b) { if(a.pos==b.pos) { return a.M<b.M; } else { retur…
链接:http://codeforces.com/gym/101116 学弟做的,以后再补 #include <iostream> #include <stdio.h> #include <cstring> #include <string> using namespace std; int a[505]; int main(){ int T; cin>>T; string s[505]; while(T--){ memset(a,0,sizeo…
A HHPaint B Square Root C Interesting Places D Road to Home E Ant and apples F Square G Pair H The Fence I Painting the natural numbers J Selection K Parquet L Closing the Loop…
比赛看不懂 之后不确定题意去瞄了题解,需要分类讨论?囧 之后按照队友已经ac的题意 就是求外面一圈周长,直接可以求得 #include<bits/stdc++.h> using namespace std; #define sz(X) ((int)X.size()) typedef long long ll; const int INF = 0x3f3f3f3f; const int N = 3e5+5; const double pi = acos(-1.0); const double e…
题意: 有n个地鼠,m个CD碟,每个CD碟有一个影响范围,范围内的地鼠都会被吵到,每次有一个操作就是移动CD碟,然后求每次被影响的地鼠有多少只. 解法: 线段树做.我们只关注地鼠有没有被吵到就可以了,之前我还去把所有可能移到的位置都存下来离散化一下,然后维护也维护错了.一堆bug,真是想多了. 线段树维护两个值:  cntS[rt]表示该段被多少个区间所覆盖, NOG[rt]表示此区间内没有被影响到的地鼠有多少个. 那么我们更新到区间,然后直接pushup即可, 因为更新到区间的时候已经可以确定…