HDU 2099 整除的尾数解题思路

整除的尾数

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

Problem Description

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

Input

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

Output

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

Sample Input

200 40
1992 95
0 0

Sample Output

00 40 80
15

#include<stdio.h>

void main()
{
    int a,b,t,count;
    scanf("%d %d",&a,&b);
    while(a != 0)
    {
        //printf("a = %d,b = %d\n",a,b);
        t = 0;
        count = 0;
        while(t <= 99)
        {
            if((a*100 + t)%b == 0)
            {
                count ++;
                if(t < 10 && count > 1)
                    printf(" 0%d",t);
                else if(t < 10 && count == 1)
                    printf("0%d",t);
                else if(t >= 10 &&count > 1)
                    printf(" %d",t);
                else if(t >= 10 && count == 1)
                    printf("%d",t);
            }
            if(count)
                t += b;
            else
                t++;
            //printf("count = %d\n",count);
        }
        printf("\n");
        scanf("%d %d",&a,&b);
    }
}
时间: 2024-10-14 19:32:13

HDU 2099 整除的尾数解题思路的相关文章

HDU 2099 整除的尾数

整除的尾数 Problem Description 一个整数,只知道前几位,不知道末二位,被另一个整数除尽了,那么该数的末二位该是什么呢? Input 输入数据有若干组,每组数据包含二个整数a,b(0<a<10000, 10<b<100),若遇到0 0则处理结束. Output 对应每组数据,将满足条件的所有尾数在一行内输出,格式见样本输出.同组数据的输出,其每个尾数之间空一格,行末没有空格. Sample Input 200 40 1992 95 0 0 Sample Outpu

hdu 2099 整除的尾数 (java)

问题: 此题java和其它的要求内存要求是一样的,弄了两遍都超时间. 发现一个专门对付杭电最后一个不要空格的方法,String输出: s=s.substring(0,s.length()-1);去掉字符串最后一个字符.. 整除的尾数 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 27699    Accepted Submission

HDU 2009 整除的尾数 题解

Problem Description 一个整数,只知道前几位,不知道末二位,被另一个整数除尽了,那么该数的末二位该是什么呢? Input 输入数据有若干组,每组数据包含二个整数a,b(0<a<10000, 10<b<100),若遇到0 0则处理结束. Output 对应每组数据,将满足条件的所有尾数在一行内输出,格式见样本输出.同组数据的输出,其每个尾数之间空一格,行末没有空格. Sample Input 200 40 1992 95 0 0 Sample Output 00 4

杭电2099 整除的尾数

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2099 解题思路:将a扩大100倍之后,再给它从加上i(i从0到99),一个一个的看哪一个能整除 反思:末两位是00的时候输出的是00(这种情况题目里面的测试数据给出了的,所以就注意到了),可是末两位如果是01 ,02,03的时候也该作同样的考虑,即为输出的时候判断一下i是不是比10大,比10大的话直接输出,比10小的话就在前面再多输出一个0 #include<stdio.h> int main()

hdoj 2099 整除的尾数

整除的尾数 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 27204    Accepted Submission(s): 11509 Problem Description 一个整数,只知道前几位,不知道末二位,被另一个整数除尽了,那么该数的末二位该是什么呢? Input 输入数据有若干组,每组数据包含二个整数a,b(0<a<100

HDU 1043 Eight八数码解题思路(bfs+hash 打表 IDA* 等)

题目链接 https://vjudge.net/problem/HDU-1043 经典的八数码问题,学过算法的老哥都会拿它练搜索 题意: 给出每行一组的数据,每组数据代表3*3的八数码表,要求程序复原为初始状态 思路: 参加网站比赛时拿到此题目,因为之前写过八数码问题,心中暗喜,于是写出一套暴力bfs+hash,结果TLE呵呵 思路一:bfs+hash(TLE) 1 #include <cstdio> 2 #include <cstring> 3 #include <queu

HDU 整除的尾数 2099

解题思路:很简单的一道水题,这几天比较忙,没怎么刷题,找找自信,很快1A.   还可以,嘿嘿 1 #include<cstdio> 2 #include<cstring> 3 #include<algorithm> 4 using namespace std; 5 const int maxn = 10; 6 char str[maxn]; 7 int main() 8 { 9 int a, b, sum, flag; 10 while(~scanf("%d

整除的尾数 【杭电-2099】 附题

/* 整除的尾数 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 23096    Accepted Submission(s): 9792 Problem Description 一个整数,只知道前几位,不知道末二位,被另一个整数除尽了,那么该数的末二位该是什么呢? Input 输入数据有若干组,每组数据包含二个整数a,b(0<a<

HDU2099 整除的尾数【水题】

整除的尾数 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 26163    Accepted Submission(s): 11044 Problem Description 一个整数,只知道前几位,不知道末二位,被另一个整数除尽了,那么该数的末二位该是什么呢? Input 输入数据有若干组,每组数据包含二个整数a,b(0<a<10