您的位置:首页 > 移动开发 > IOS开发

A Mathematical Curiosity

2020-03-29 18:42 1106 查看

最后一道题

题目:

Problem Description

给定两个整数n和m,计算整数对(a,b)的数目,使0<a<b<n和(a2+b2+m)/(ab为整数。

此问题包含多个测试用例!

多个输入的第一行是整数N,然后是空行,后跟N个输入块。每个输入块的格式如问题描述所示。输入块之间有一个空行。

输出格式由N个输出块组成。输出块之间有一个空行。

Input

你将在输入中得到许多情况。每种情况都由包含整数n和m的行指定。输入的结束由n=m=0的情况表示。你可以假设0<n<=100。

Output

对于每个案例,打印案例号以及满足给定属性的对数(a,b)。以如下所示的格式在一行上打印每个案例的输出。

Sample Input

1

10 1

20 3

30 4

0 0

Sample Output

Case 1: 2

Case 2: 4

Case 3: 5

大致意思就是说输入一个T 然后输入T组n,m, 之后在区间(a,b)中(0<a<b<n)寻找a和b满足(a2+b2+m)可以被a*b整除的情况个数然后输出

要注意的是这里只给出了T=1的情况。如果T=2的话 中间要多一个空行

直接上答案了:

#include<stdio.h>
int main(){
int T;
scanf("%d",&T);
while(T--){
int n,m;
int count=0;
while(~scanf("%d %d",&n,&m)){
if(!n && !m)
break;
int i,j,k=0;
printf("Case %d: ",++count);
for(i=1;i<n;i++)
for(j=i+1;j<n;j++)
if((i*i+j*j+m)%(i*j)==0)
k++;
printf("%d\n",k);
}
if(T)
printf("\n");
}
return 0;
}

第一周 END

第一周也是练手的一周,做的蛮顺的,不过自己也不知道下一周的题会如何,也不知道自己所担心的事情会不会在之后成真,还是有些怯场,不愿多说什么,我作为一只萌新,还要更努力才行,我还在前行,并没有停下,仅此而已。

  • 点赞 2
  • 收藏
  • 分享
  • 文章举报
Lose韵律 发布了26 篇原创文章 · 获赞 12 · 访问量 668 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: