AtCoder
文章平均质量分 52
我的妹妹syf
我的妹妹不可能那么胖
展开
-
ATcoder Grander Contest 17C Snuke and Spells 附题意
题目大意:N个球,每个球上有1-N之间的数字。如果当前有K个球,那么球上数字为K的所有球都会同时消失,然后继续进行这个操作。如果操作无法进行下去,就终止。你的任务是让所有球消失。不难发现,很多情况下球都会剩下一些,所以你需要在开始时修改一些球上的数字,使他们能被消完。当然,修改的次数要尽可能的少,问最小修改次数。还没完:我们有M次永久修改操作,将永久修改一个球上的数字。问每次永久修原创 2017-07-10 15:46:12 · 327 阅读 · 0 评论 -
Atcoder Grand Contest 013D piling Up
题目大意:初始时有i个红球(i∈[0,n])和n-i个蓝球。进行m次操作,每次先任意选出一个球,然后再放入一个蓝球和一个红球,再任意选出一个球。问选出的球的序列有多少种可能?n,m∈[1,3000]首先,我们用i表示当前红球的数量:不难发现,如果我们将两次取球合并,那么每次操作必然是以下四种:1、i>=1时,可以取出两个红球,i-=12、i>=1时,可以先取出一个红球,再取出一原创 2017-10-03 18:54:16 · 237 阅读 · 0 评论 -
agc001D
#include#define N 1010using namespace std;int n,m;int a[N];vector s,w;int main(){ scanf("%d%d",&n,&m); for(int i=0;i<m;i++){ scanf("%d",&a[i]); if(a[i]&1) s.push_back(a[i]); else w.push_原创 2018-01-02 09:19:17 · 286 阅读 · 0 评论 -
agc001E
#includeusing namespace std;inline void read(int &a){ a=0;char ch=getchar(); while(ch'9') ch=getchar(); while(ch='0') a=a*10+ch-'0',ch=getchar();}const int MOD=1e9+7;int dp[4010][4010],fac[801原创 2018-01-02 10:15:08 · 299 阅读 · 0 评论 -
AtCoder Grand Contest 003 D - Anticube
#include#define N 100100using namespace std;typedef long long LL;int prime[2200],len;int n,m,ans;LL l[N],r[N];map ma;int main(){ for(int i=2;i<2200;i++){ int fla=1; for(int j=2;j<i;j++)原创 2018-01-13 14:56:30 · 443 阅读 · 0 评论 -
AtCoder Regular Contest 077 E - guruguru
#include#define N 100100using namespace std;typedef long long LL;inline void read(int &a){ a=0;char ch=getchar(); while(ch'9') ch=getchar(); while(ch='0') a=a*10+ch-'0',ch=getchar();}int a[N]原创 2018-01-13 20:58:53 · 237 阅读 · 0 评论 -
AtCoder Grand Contest 017 D - Game on Tree
#include#define N 200100using namespace std;int beg[N],to[N],nex[N];int sg[N];int len,n;inline void Add(int a,int b){ nex[++len]=beg[a],beg[a]=len,to[len]=b; nex[++len]=beg[b],beg[b]=len,to[le原创 2018-01-13 21:05:07 · 246 阅读 · 0 评论 -
AtCoder Grand Contest 002 D - Stamp Rally
道理我都懂,可是看了一眼其他题解为什么那么长啊。。。#include#define N 100100using namespace std;struct Node{int x,y,z,l,r,las,ord;}q[N];int n,m,Q;int fa[N],siz[N],ans[N];int a[N],b[N];int find_fa(int a){ return fa[a]原创 2018-01-04 19:53:12 · 285 阅读 · 0 评论 -
AtCoder Grand Contest 002 E - Candy Piles
#include#define N 100100using namespace std;int a[N],n,sg=1;int main(){ scanf("%d",&n); for(int i=1;i<=n;i++) scanf("%d",&a[i]); sort(a+1,a+n+1); reverse(a+1,a+n+1); for(int i=1;i<=n;i++){原创 2018-01-04 20:55:03 · 444 阅读 · 0 评论