码迷,mamicode.com
首页 > 其他好文 > 详细

HDU 3130 Sir Bedavere’s Bogus Division Solutions(数学)

时间:2014-11-05 19:43:32      阅读:142      评论:0      收藏:0      [点我收藏+]

标签:数学   hdu   

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3130


Problem Description

bubuko.com,布布扣

The wise Sir Bedavere often uses non-standard logic, yet achieves positive results1.Well, it seems he has been at it again, this time with division. He has determined that canceling the common digit of a numerator and denominator produces the correct answer. Of course, Sir Bedavere only tried this on a small sample of three digit numbers. An example of what he did is shown in the following division problem (in which he canceled the common 6):

bubuko.com,布布扣

Your task is to find all three digit number combinations with the following property:

number combinations where removing the rightmost digit from the top number (numerator) and the identical leftmost digit from the bottom number (denominator) leaves the result of the calculation unchanged.

Omit all of the trivial cases — xxx/xxx = xx/xx (222/222 = 22/22). The solutions are to be shown in increasing order of the top number (the numerator).

Hint
1 Please see the scene "How do you know she‘s a witch?" or recall the quote "…how sheep‘s bladders may be employed to prevent earthquakes."
 

Input
NONE! There is no input for this problem.
 

Output
Show the bogus division problems one to a line in the format shown below (which gives a sample merely to show the format) — single spaces separate the non-blank characters.
 

Sample Output
217 / 775 = 21 / 75 249 / 996 = 24 / 96
 

Source

PS:

在所有的三位数中,输出分子去掉个位,分母去掉百位后!比例相同的数!

其实也就六个数而已!打表即可!

代码如下一:

#include <cstdio>
int main()
{
    printf("166 / 664 = 16 / 64\n");
    printf("199 / 995 = 19 / 95\n");
    printf("217 / 775 = 21 / 75\n");
    printf("249 / 996 = 24 / 96\n");
    printf("266 / 665 = 26 / 65\n");
    printf("499 / 998 = 49 / 98\n");
    return 0;
}

代码二:

#include <cstdio>
#include <cstring>
int main()
{
    for(int i = 100; i <= 999; i++)
    {
        for(int j = 100; j <= 999; j++)
        {
            int t1 = (i-i%10)/10;
            int t2 = j-j/100*100;
            int x1 = i%10;
            int x2 = j/100;
            if(x1==x2 && i/(j*1.0)==t1/(t2*1.0) && i != j)
            {
                printf("%d / %d = %d / %d\n",i,j,t1,t2);
            }
        }
    }
    return 0;
}


HDU 3130 Sir Bedavere’s Bogus Division Solutions(数学)

标签:数学   hdu   

原文地址:http://blog.csdn.net/u012860063/article/details/40828451

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!