吃花生
时间限制:
1000 ms | 内存限制:
65535 KB
难度:
0
-
描述
-
HEIHEI非常喜欢吃花生,他每天都会吃一些花生,心情好的话会吃的比较多,现在已经知道,HEIHEI从周一到周日的心情值递增的,也就是说周一吃的花生最少,周日吃的花生最多。现在给你7个数表示有7堆花生,顺序是打乱的,HEIHEI每天吃的花生数都在这7个数中,现在告诉你今天周几,请你告诉HEIHEI他今天应该吃多少花生。例如花生数有“1 2 5 4 6 7 3”,输入“Monday”,星期一就应该输出1,如果输入“”Thursday”,周四的话应该吃4个,输出4.
-
输入
-
第一行有一个数t(1<=t<=100)表示有t组测试数据。
第二行有7个数分别表示这一周内每一天的花生数。
第三行有一个字符串,表示周几(Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday)。
输出
- 输出一个数,表示这一天应该吃的花生数。 样例输入
-
2 1 2 3 4 5 6 7 Friday 1 4 3 5 6 8 10 Sunday
样例输出
-
5 10
-
答案:
-
#include<stdio.h> #include<algorithm>> using namespace std; int dd(char a[]) { if(a[0]=='M')return 0; else if(a[0]=='T'&&a[1]=='u')return 1; else if(a[0]=='W')return 2; else if(a[0]=='T'&&a[1]=='h')return 3; else if(a[0]=='F')return 4; else if(a[0]=='S'&&a[1]=='a')return 5; else return 6; } int main() { int n; scanf("%d",&n); while(n--) { int a[100],i; char b[10000]; for(i=0; i<7; i++) { scanf("%d",&a[i]); } getchar(); scanf("%s",b); printf("%d\n",a[dd(b)]); }
}
(调用函数) -
法2(简化):
-
#include<stdio.h> #include<algorithm> using namespace std; int main() { char b[50]; int n; scanf("%d",&n); while(n--) { int a[10],i; for(i=0; i<7; i++) { scanf("%d",&a[i]); } sort(a,a+7); scanf("%s",b); if(b[0]=='M')printf("%d\n",a[0]); if(b[0]=='T'&&b[1]=='u')printf("%d\n",a[1]); if(b[0]=='W')printf("%d\n",a[2]); if(b[0]=='T'&&b[2]=='r')printf("%d\n",a[3]); if(b[0]=='F')printf("%d\n",a[4]); if(b[0]=='S'&&b[1]=='a')printf("%d\n",a[5]); if(b[0]=='S'&&b[1]=='u')printf("%d\n",a[6]); } }
-
-
第一行有一个数t(1<=t<=100)表示有t组测试数据。