题目:统计一个谱子的每段是否是一拍。
分析:模拟。统计斜线间的总和比较计数即可。
说明:为了简化计算都乘以64。
#include <stdio.h>
#include <stdlib.h>
char measure[202];
int duration[99];
int main()
{
duration['W'] = 64;
duration['H'] = 32;
duration['Q'] = 16;
duration['E'] = 8;
duration['S'] = 4;
duration['T'] = 2;
duration['X'] = 1;
while (~scanf("%s",measure) && measure[0] != '*') {
int sum = 0, ans = 0;
for (int i = 0; measure[i]; ++ i) {
if (measure[i] == '/') {
if (sum == 64) {
ans ++;
}
sum = 0;
}else {
sum += duration[measure[i]];
}
}
printf("%d\n",ans);
}
return 0;
}