竟然没有TLE,我原来预估能拿一半分

P2089 烤鸡

666
by 6QWQ6 @ 2017-10-02 11:37:53


```cpp #include<iostream> #define f(i) for(int i=1;i<=3;i++) using namespace std; int main(){ int n; cin>>n; int count=0; f(a){ f(b){ f(c){ f(d){ f(e){ f(f){ f(g){ f(h){ f(i){ f(j){ if(a+b+c+d+e+f+g+h+i+j==n)count++; } } } } } } } } } } cout<<count<<endl; f(a){ f(b){ f(c){ f(d){ f(e){ f(f){ f(g){ f(h){ f(i){ f(j){ if(a+b+c+d+e+f+g+h+i+j==n){ cout<<a<<' '<<b<<' '<<c<<' '<<d<<' '<<e<<' '<<f<<' '<<g<<' '<<h<<' '<<i<<' '<<j<<endl; } } } } } } } } } } } } ```
by Erina @ 2017-10-10 20:54:37


666
by twilightforest @ 2018-02-24 17:56:44


``` 666 ```
by AlgoEmperor @ 2018-03-17 14:27:27


~~~ #include<iostream> #include<cmath> using namespace std; int now[10],zs; void print() { for(int i=0;i<10;i++)cout<<now[i]<<" "; cout<<endl; } void ans_z(int n,int i) { if(i==9){now[9]=n;zs++;return;} for(int j=max(n-27+3*i,1);j<=min(3,n-9+i);j++) { now[i]=j; ans_z(n-j,i+1); } return; } void ans_p(int n,int i) { if(i==9){now[9]=n;print();return;} for(int j=max(n-27+3*i,1);j<=min(3,n-9+i);j++) { now[i]=j; ans_p(n-j,i+1); } return; } int main() { int n; cin>>n; ans_z(n,0); cout<<zs<<endl; ans_p(n,0); return 0; } ~~~ 正解在此
by ttklwxx @ 2018-03-17 22:54:03


|