Problem Description
相传古代有位将军清点军队人数时有妙招,不直接数人数,而是让士兵们按照3人一队排,再5人一队排,再7人一队排,每次变换都记下排尾人数,最后得出总人数N(10<=N<=100)
Input
每组数据包含3个整数A、B、C,用来表示每次记下的排尾人数(A<=3,B<=5,C<=7)
Output
输出总人数的最小值,或无解
Sample Input
2 1 6
2 1 3
Sample Output
41
无解
此题注意考虑a,b,c分别为3,5,7的情况(余数为零)。
#include
int main()
{
int i, a, b, c;
while (~scanf(“%d%d%d”, &a, &b, &c))
{
if (a == 3)
a = 0;
if (b == 5)
b = 0;
if (c == 7)
c = 0;
for (i = 10; i <= 100; i++)
{
if (i % 3 == a && i % 5 == b && i % 7 == c)
{
printf("%dn", i);
break;
}
}
if (i == 101)
printf("无解n");
}
return 0;
}
授权协议:创作共用 署名-非商业性使用 2.5 中国大陆
除注明外,本站文章均为原创;转载时请保留上述链接。