救救被卡常的可爱蒟蒻

P3154 [CQOI2009] 循环赛

打错了@[wubaiting2020](/space/show?uid=42019)
by 可耐の小可耐 @ 2019-08-17 11:58:39


@[lyfqaq](/space/show?uid=237015) 您卡常最厉害了,找我这个蒟蒻干吗?
by Soledad_S @ 2019-08-17 11:59:55


@[lyfqaq](/space/show?uid=237015) 您卡常最厉害了,找我这个蒟蒻干吗?
by wubaiting2020 @ 2019-08-17 12:00:05


lyf是我们的红太阳
by wubaiting2020 @ 2019-08-17 12:00:37


突然发现忘贴代码了 ```cpp #pragma GCC optimize(3,"Ofast","inline","-ffast-math","no-stack-protector") #pragma GCC target("avx,sse2,sse3,sse4,mmx") #include<bits/stdc++.h> #define reg register #define ll long long #define inf 0x3f3f3f3f using namespace std; ll n,a[105],b[105],ans; const ll f[]={3,1,0,0}; struct ios { inline char read() { static const int IN_LEN=1<<18|1; static char buf[IN_LEN],*s,*t; return (s==t)&&(t=(s=buf)+fread(buf,1,IN_LEN,stdin)),s==t?-1:*s++; } template <typename _Tp> inline ios & operator >>(_Tp&x) { static char c11,boo; for(c11=read(),boo=0;!isdigit(c11);c11=read()){ if(c11==-1)return *this; boo|=c11=='-'; } for(x=0;isdigit(c11);c11=read())x=x*10+(c11^'0'); boo&&(x=-x); return *this; } }io; void dfs(reg int x,reg int y) { if(b[x]>a[x])return; if(b[x]+(n-y+1)*3<a[x])return; if(x==n) { ++ans; return; } if(y==n) { reg int t=a[x]-b[x]; if(t==2)return; b[y]+=f[t]; if(b[y]<=a[y])dfs(x+1,x+2); b[y]-=f[t]; } else { b[x]+=3; if(b[x]<=a[x])dfs(x,y+1); b[x]-=3; b[y]+=3; if(b[y]<=a[y])dfs(x,y+1); b[y]-=3; ++b[x],++b[y]; dfs(x,y+1); --b[x],--b[y]; } } int main() { io>>n; for(reg int i=1;i<=n;i++)io>>a[i]; dfs(1,2); printf("%lld\n",ans); return 0; } ```
by 可耐の小可耐 @ 2019-08-17 12:01:13


@[wubaiting2020](/space/show?uid=42019) 被一群红名奆奆包围
by 可耐の小可耐 @ 2019-08-17 12:02:01


~~输优~~fread
by qbu666666 @ 2019-08-17 12:02:58


就我一个蓝名蒟蒻
by 可耐の小可耐 @ 2019-08-17 12:03:04


@[qbu666666](/space/show?uid=157598) 1个数fwrite? 那个封装过的io就是fread实现
by 可耐の小可耐 @ 2019-08-17 12:03:39


@[lyfqaq](/space/show?uid=237015) dfs里的reg去掉试试awa
by XeCtera @ 2019-08-17 12:06:48


| 下一页