(HDU)1017 --A Mathematical Curiosity(数学好奇心)
Posted ACDoge
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(HDU)1017 --A Mathematical Curiosity(数学好奇心)相关的知识,希望对你有一定的参考价值。
描述 给定两个整数n和m,计数整数对(a,b)的数目,使得0 <a <b <n,并且(a ^ 2 + b ^ 2 + m)/(ab)是一个整数。 这个问题包含多个测试用例! 输入的第一行是整数N,然后是空白行,后跟N个输入块。 每个输入块采用问题说明中指示的格式。 输入块之间有空行。 输出格式由N个输出块组成。 输出块之间有一个空行。 输入 您将在输入中获得多个样例。 每个情况由包含整数n和m的行指定。 输入结束由n = m = 0的情况表示。您可以假设0 <n <= 100。 输出 对于每种情况,输出样例编号以及满足给定属性的对数(a,b)。 在一行上输出每种情况的答案,格式如下所示。 样品输入 1 10 1 20 3 30 4 0 0 示例输出 Case 1: 2 Case 2: 4 Case 3: 5
找出满足要求的数对,这题容易WA和PE,都是格式的原因。
这题其实特别水,n的范围很小,忽略输入的空行也可以AC...
1 #include <iostream> 2 #include <cstdio> 3 4 using namespace std; 5 6 int main() 7 { 8 9 int N; 10 int n,m; 11 scanf("%d",&N); 12 while(N--) 13 { 14 int num=1; 15 while(~scanf("%d%d",&n,&m) &&(n||m) ) 16 { 17 int sum=0; 18 int i,j; 19 for(i=1;i<n;i++) 20 { 21 for(j=i+1;j<n;j++) 22 { 23 if((i*i+j*j+m)%(i*j) == 0) 24 sum++; 25 } 26 } 27 printf("Case %d: %d\\n",num++,sum); 28 } 29 if(N) 30 printf("\\n"); 31 } 32 return 0; 33 }
以上是关于(HDU)1017 --A Mathematical Curiosity(数学好奇心)的主要内容,如果未能解决你的问题,请参考以下文章
HDU 1017 A Mathematical Curiosity (数学)
HDU 1017 A Mathematical Curiosity (枚举水题)
HDU 1017 A Mathematical Curiosity
Hdu oj 1017 A Mathematical Curiosity