CodeChef submission 491186 (C++ 4.0.0-8) plaintext list. Status: WA, problem MARCHA1, contest . By anantc (anantc), 2011-03-18 19:26:22.
#include<stdio.h> int a[21]={0}; int n=0,r=0; using namespace std; int sum(int k) { int s=0,i=0; while (i<=k) {s=s+a[i];i++;} return s; } int pos(int m) { int j=-1,sumi,sumii,i=0; while(i<n){ sumi=sum(i); sumii=sum(i+1); if((sumi<m)&&(m<sumii)){return i;j++;break;} if((sumi==m)||(sumii==m)){r=1;j++;return i;break;} i++; } if(j==-1){r=-1;return 0;} } int lim(int m,int k) { int i=0,f=0; while(i<=k){ if(a[i]>m){ if(i==0){r=-1; return 0; } else { return (i-1); f=1; break;} } i++; } if(f==0){return k;} } int check(int m,int k) { int i=0,j,q; if(r==0) { while(i<=k) { if(a[i]==m){r=1;break;} i++; } i=0; if(r==0){j=pos(m);} if(r==0){ i=j+1; while(i<=k){ q=m-a[i]; if(r==1){break;} check(q,j); i++; } } } return 0; } int main() { a[20]=1001; int j,m,i=0,t,at=0; int o,p,temp; while(at<t){ r=0; i=0; while(i<n){ i++; } for(o=0;o<n;o++) { for(p=0;p<o;p++) { if(a[o]<a[p]) { temp=a[o]; //swap a[o]=a[p]; a[p]=temp; } } } j=lim(m,(n-1)); check(m,j); at++; } return 0; }
Comments

