Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
这个程序在JOJ上过了,可是POJ上却wa……谁能找到使这个程序wa的测试数据……#include <iostream> #include <cstdio> #include <string> #include <set> #include <algorithm> using namespace std; long in[20],ans[20],flag[20],mark; string get,tmp; set<string> out; string change(long num){ string ret="",tmp=""; tmp+=num%10+'0'; while(num/=10) tmp+=num+'0'; for(long i=tmp.size()-1;i>=0;i--) ret+=tmp[i]; return ret; } void dfs(long s,long top,long n){ long i,j; for(i=top-1;i>=0;i--){ if(in[i]==s){ get=""; ans[n]=s; for(j=0;j<n;j++) get+=change(ans[j])+"+"; get+=change(ans[n]); if(out.insert(get).second) printf("%s\n",get.c_str()); mark=1; }else if(in[i]<s){ ans[n]=in[i]; dfs(s-in[i],i,n+1); } } } int main() { long t,n,i,ansNum; while(scanf("%ld%ld",&t,&n),n){ mark=0; out.clear(); for(i=0;i<n;i++) scanf("%ld",&in[i]); sort(in,in+n); printf("Sums of %ld:\n",t); dfs(t,n,0); if(!mark) printf("NONE\n"); } return 0; } Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator