hdoj-2099-整除的尾数(解题报告)

来源:互联网 发布:windows ce6.0应用软件 编辑:程序博客网 时间:2024/06/04 20:41

题目来源:http://acm.hdu.edu.cn/showproblem.php?pid=2099

问题描述:

整除的尾数

Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 39874    Accepted Submission(s): 17074

Problem Description

一个整数,只知道前几位,不知道末二位,被另一个整数除尽了,那么该数的末二位该是什么呢?

Input

输入数据有若干组,每组数据包含二个整数a,b(0<a<10000, 10<b<100),若遇到0 0则处理结束。

Output

对应每组数据,将满足条件的所有尾数在一行内输出,格式见样本输出。同组数据的输出,其每个尾数之间空一格,行末没有空格。

Sample Input

200 401992 950 0

Sample Output

00 40 8015

 

题目分析:对任意整数,不知道其后两位,给出它的一个因数,求满足条件的所有尾数,一行内输出。

解题思路:第一个数乘一百,然后进行循环,每次加一,当循环到某次,对第二个数求余为零时,输出循环次数,即尾数,注意输出时控制空格,还有,十位上为0的要补0。

代码实现:

#include<stdio.h>int main(void){    int a,b,i,flag;    while(scanf("%d%d",&a,&b),a&&b)    {      flag=0;      for(i=0;i<100;i++)      {         if((a*100+i)%b==0)//找出对第二个数求余为0的数         {           if(flag==0)//控制空格           {                flag=1;                printf("%02d",i);//%02d,输出的数为两位数,不够的补0;           }           else                printf("% 02d",i);         }      }      printf("\n");    }    return 0;}


 

0 0