这道题是不是不用回溯

P2404 自然数的拆分问题

确实不用,我也没用
by CXbugs1220 @ 2023-07-21 22:26:19


你也可以用打表![](//图.tk/4)
by Spir1t @ 2023-07-26 15:03:51


``` #include<bits/stdc++.h> using namespace std; typedef long long ll; typedef double db; inline ll read() { ll x = 0, f = 1; char ch = getchar(); while (ch > '9' || ch < '0') { if (ch == '-')f = -1; ch = getchar(); } while (ch >= '0' && ch <= '9') { x = x * 10 + ch - '0'; ch = getchar(); } return x * f; } signed main(){ int n; n=read(); if(n==2){ puts("1+1"); }else if(n==3){ puts("1+1+1"); puts("1+2"); }else if(n==4){ puts("1+1+1+1"); puts("1+1+2"); puts("1+3"); puts("2+2"); }else if(n==5){ puts("1+1+1+1+1"); puts("1+1+1+2"); puts("1+1+3"); puts("1+2+2"); puts("1+4"); puts("2+3"); }else if(n==6){ printf("1+1+1+1+1+1\n1+1+1+1+2\n1+1+1+3\n1+1+2+2\n1+1+4\n1+2+3\n1+5\n2+2+2\n2+4\n3+3\n"); }else if(n==7){ printf("1+1+1+1+1+1+1\n1+1+1+1+1+2\n1+1+1+1+3\n1+1+1+2+2\n1+1+1+4\n1+1+2+3\n1+1+5\n1+2+2+2\n1+2+4\n1+3+3\n1+6\n2+2+3\n2+5\n3+4\n"); }else if(n==8){ printf("1+1+1+1+1+1+1+1\n1+1+1+1+1+1+2\n1+1+1+1+1+3\n1+1+1+1+2+2\n1+1+1+1+4\n1+1+1+2+3\n1+1+1+5\n1+1+2+2+2\n1+1+2+4\n1+1+3+3\n1+1+6\n1+2+2+3\n1+2+5\n1+3+4\n1+7\n2+2+2+2\n2+2+4\n2+3+3\n2+6\n3+5\n4+4\n"); } return 0; } ```
by Spir1t @ 2023-07-26 15:04:02


|