标签:
Time Limit: 1000MS | Memory Limit: 65536K | |
Total Submissions: 6350 | Accepted: 3673 |
Description
3 1 2 4Behind FJ‘s back, the cows have started playing a more difficult game, in which they try to determine the starting sequence from only the final total and the number N. Unfortunately, the game is a bit above FJ‘s mental arithmetic capabilities.
4 3 6
7 9
16
Input
Output
Sample Input
4 16
Sample Output
3 1 2 4
Hint
Source
// // main.cpp // poj3187 // // Created by Candy on 9/12/16. // Copyright © 2016 Candy. All rights reserved. // #include <iostream> #include <cstdio> using namespace std; const int N=15; int n,sum,c[N],vis[N],ans[N],flag=0; void dfs(int d,int now){ if(flag) return; if(d==n&&now==sum) {flag=1;for(int i=0;i<n;i++) printf("%d ",ans[i]);return;} if(d==n) return; for(int i=1;i<=n;i++){ if(vis[i]) continue; if(now+i*c[d]<=sum){ ans[d]=i; vis[i]=1; dfs(d+1,now+i*c[d]); vis[i]=0; } } } int main(int argc, const char * argv[]) { scanf("%d%d",&n,&sum); n--; c[0]=1; for(int i=1;i<=n;i++) c[i]=c[i-1]*(n-i+1)/i; n++; dfs(0,0); return 0; }
POJ3187Backward Digit Sums[杨辉三角]
标签:
原文地址:http://www.cnblogs.com/candy99/p/5866965.html