| ||||||||||
| 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 | |||||||||
Re:大牛来看看为什么我的能AC?感觉不对啊In Reply To:大牛来看看为什么我的能AC?感觉不对啊 Posted by:hanjialong at 2008-08-03 21:02:06 > 每种面值只保留了一种组成方法。。。。所以觉得不对
>
> #include<iostream>
> using namespace std;
>
> const int maxn=100010;
>
> struct curr
> {
> bool ok;
> int n[10];
> };
>
> curr c[maxn];
>
> int main()
> {
> int num,cash,n[10],d[10],k;
> int i,j;
> while(scanf("%d",&cash)!=EOF)
> {
> for(i=0;i<=cash;i++)
> c[i].ok=0;
> c[0].ok=1;
> scanf("%d",&num);
> for(i=0;i<num;i++)
> {
> scanf("%d%d",&n[i],&d[i]);
> c[0].n[i]=0;
> }
> for(i=0;i<=cash;i++)
> if(c[i].ok)
> {
> for(j=0;j<num;j++)
> if(c[i].n[j]<n[j]&&i+d[j]<=cash&&!c[i+d[j]].ok)
> {
> c[i+d[j]].ok=1;
> for(k=0;k<num;k++)
> c[i+d[j]].n[k]=c[i].n[k];
> c[i+d[j]].n[j]++;
> }
> }
> while(!c[cash].ok) cash--;
> printf("%d\n",cash);
> }
> return 0;
>
> }
Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator