CF
turtlew
这个作者很懒,什么都没留下…
展开
-
日常补题
CFR 363 给定一个序列: ai equals 0, if on the i-th day of vacations the gym is closed and the contest is not carried out; ai equals 1, if on the i-th day of vacations the gym is closed, but the contest is原创 2016-07-20 18:32:40 · 295 阅读 · 0 评论 -
CF
能否将给出的多元集合划分成两个集合,使得每个集合中,只出现了一次的元素的个数相等。#include <bits/stdc++.h>#define N 105using namespace std;int s[N],des[N];char ans[N];map<int,int> mp;vector<int> three,one;int main()...原创 2018-10-24 18:04:41 · 254 阅读 · 0 评论 -
CF
517 B#include #include #include #include using namespace std;int f[5][5][5];int n,a[100006],b[100006],ans[100006];bool check(){for(int i=2;i<=n;i++){ans[i]=f[a[i]][b[i]][ans[i-1]];if(a...原创 2018-10-24 18:02:52 · 179 阅读 · 0 评论 -
387 div2 cf 4
C 题意: 有n个服务器 1 ~n 有m个任务,t代表任务开始的时间,k代表任务要占用的服务器数量,d代表占用时间。 m<=1e5 每个任务占用服务器时会选择使用编号最小的服务器 输出每个任务占用的服务器编号总和,没有则-1暴力模拟就好了。=_=虽然感觉会T。。但是试着交了发struct TASK { int t, k, d;} task[maxn];set<int>S;se原创 2016-12-20 00:30:30 · 293 阅读 · 0 评论 -
386 div2 cf 3
一行上有0-s个点,列车直走到尽头转向,人要从起点x1走到终点x2,列车速度是t1 s/m,人的速度是t2 s/m,列车在p点,d=1代表方向向右,d=-1向左模拟=_=但是模拟的太痛苦过后看到一个暴力模拟的感觉不错。。C. cin>>s>>x1>>x2>>t1>>t2>>p>>d; int ans = abs(x1-x2)*t2; if(t1>=t2) cout<<ans<<原创 2016-12-19 00:59:21 · 333 阅读 · 0 评论 -
385 div2 cf 2
感觉什么都要练。。。就算有思路写起来都要花好长时间。。A.求循环节,n<=50 =_=暴力我都能写这么长…心累#include <set>#include <cstring>#include <algorithm>#include <iostream>#include <cstdio>#include <cmath>#include <queue>#include <stack>#原创 2016-12-18 23:41:58 · 547 阅读 · 0 评论 -
382 Div 2 cf 1
B.贪心下,去掉最小的n - n1 - n2个,对剩下的求 sum1/n1 + sum2/n2,(n1 > n2 &&sum1 < sum2)答案最大 C.研究下就是斐波那契#include <set>#include <cstring>#include <algorithm>#include <iostream>#include <cstdio>#include <cmath>#i原创 2016-12-16 23:23:16 · 338 阅读 · 0 评论 -
cf round 384 div2 E,二分 + 状压DP
题意 给一个长度为n的序列,且每个元素在[1,8]之间, 要求找出一个子序列满足 1.子序列的相同元素要连续 2.子序列每个元素出现的次数之差不超过1求出满足要求的最长的子序列长度题解: 首先 假设存在一个子序列满足[1,8]中有的数字出现次数是len,这样的数字有b个,剩下(8-b)个数字的出现次数是len - 1,那么这个子序列的长度是d2 = len * b + (8 - b)*(原创 2016-12-16 17:50:29 · 348 阅读 · 0 评论 -
CF 715B 最短路
给n点m边,L,s,t 修改m条边中边为0的边, 使满足s,t的最短路长度是L,且边为0的边的权值必须在[1,1e18]内做法,1.先做一次假设每条零边都不可经过的最短路,如果dis[t] < L,则是NO 2.再将每条零边修改成1,如果此时dis[t] > L 也是 NO 除了这两种情况,就必有YES,至于为啥,按下面的思路想一下就知道了将第二个操作后的最短路拿出来,对非最短路上的零边都赋原创 2016-10-19 23:03:08 · 1075 阅读 · 0 评论 -
CF
510 2C#include<bits/stdc++.h>using namespace std;const int maxn=2e5+5;const int inf=1e9+5;int n,a[maxn],cnt;vector<int>vec; int main(){ cin>>n; for(int i=1; i<=n;...原创 2018-10-24 18:07:43 · 148 阅读 · 0 评论