题目链接:
http://acm.xmu.edu.cn/JudgeOnline/problem.php?id=1611
题目大意:
有N个订单,每个订单需要a[i]个草鞋。刘备最多生产1024个草鞋。问他共需要做多少草鞋。
题目思路:
【贪心】
审题审错了以为是背包WA了两次心痛。
直接统计草鞋和,如果超过1024就输出1024,否则输出和即可。
/**************************************************** Author : Coolxxx
Copyright 2017 by Coolxxx. All rights reserved.
BLOG : http://blog.csdn.net/u010568270 ****************************************************/
#include<bits/stdc++.h>
#pragma comment(linker,"/STACK:1024000000,1024000000")
#define abs(a) ((a)>0?(a):(-(a)))
#define lowbit(a) (a&(-a))
#define sqr(a) ((a)*(a))
#define mem(a,b) memset(a,b,sizeof(a))
const double EPS=1e-;
const int J=;
const int MOD=;
const int MAX=0x7f7f7f7f;
const double PI=3.14159265358979323;
const int N=;
const int M=;
using namespace std;
typedef long long LL;
double anss;
LL aans;
int cas,cass;
int n,m,lll,ans;
int a[N];
int main()
{
#ifndef ONLINE_JUDGE
// freopen("1.txt","r",stdin);
// freopen("2.txt","w",stdout);
#endif
int i,j,k;
int x,y,z;
// for(scanf("%d",&cass);cass;cass--)
// for(scanf("%d",&cas),cass=1;cass<=cas;cass++)
// while(~scanf("%s",s))
while(~scanf("%d",&n))
{
m=;ans=;
for(i=;i<=n;i++)
{
scanf("%d",&a[i]);
ans+=a[i];
}
if(ans>m)printf("%d\n",m);
else printf("%d\n",ans);
}
return ;
}
/*
// //
*/