1205: 你爱我么?
Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 570 Solved: 252
Submit Status Web Board
Description
LCY买个n束花准备送给她暗恋的女生,但是他不知道这个女生是否喜欢他。这时候一个算命先生告诉他让他查花瓣数,第一个花瓣表示"爱",第二个花瓣表示"不爱",第三个花瓣表示"爱"......
为了使最后结果是"爱",LCY需要从n束花中选出一些,你能帮他算出最后他送给这个女生的花中最多包含多少个花瓣吗?
Input
首先输入一个整数T,表示测试实例的个数。
接下来T组测试实例,每组实例首先输入一行,包括一个整数n(1 <= n <= 100)。
然后输入一行,n个数a1,a2...an(1 <= ai <= 100),表示每束花包含的花瓣的个数。
Output
每组实例输出一个整数,表示LCY最多能送多少个花瓣给这个女生。
Sample Input
3111235 6 7
Sample Output
1013
HINT
每一束花不允许去掉一些花瓣再送。这样算命就不准了-_-#
Source
思路:详见注释
代码:
/*=============================AC情况===============================*/
/*题目网址: */
/*时间: */
/*心得: */
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define G 113
int main() {
int T,n,min,ans,a,have;
scanf("%d",&T);
while(T--) {
ans=0;
min=102;
have=0;
scanf("%d",&n);
for(int j=0; j<n; j++) {
scanf("%d",&a);
ans=ans+a;
if((a%2!=0)&&(a<min)) {
min=a;
have=1;//当有奇数的的时候才能够赠送昂,因为偶数加偶数还是偶数
}
}
if(have) {
if(ans%2!=0)
printf("%d\n",ans);
else
printf("%d\n",ans-min);
} else
printf("0\n");
}
//printf("\n");
return 0;
}
/*********************************测试数据*********************************
**************************************************************************/