Ekka Dokka
2016-07-23 20:36
393 查看
Description
Ekka and his friend Dokka decided to buy a cake. They both love cakes and that's why they want to share the cake after buying it. As the name suggested that Ekka is very fond of odd numbers and Dokka is very fond of even numbers, they want to divide the
cake such that Ekka gets a share of N square centimeters and Dokka gets a share of M square centimeters where N is odd and M is even. Both N and M are positive
integers.
They want to divide the cake such that N * M = W, where W is the dashing factor set by them. Now you know their dashing factor, you have to find whether they can buy the desired cake or not.
Input
Input starts with an integer T (≤ 10000), denoting the number of test cases.
Each case contains an integer W (2 ≤ W < 263). And W will not be a power of 2.
Output
For each case, print the case number first. After that print "Impossible" if they can't buy their desired cake. If they can buy such a cake, you have to print N and M. If there are multiple solutions, then
print the result where M is as small as possible.
Sample Input
3
10
5
12
Sample Output
Case 1: 5 2
Case 2: Impossible
Case 3: 3 4
把一个数分成一个偶数和一个奇数 要求偶数尽可能小
#include<cstdio>
int main()
{
int t;
int cut=0;
scanf("%d",&t);
while(t--)
{
cut++;
long long n;
scanf("%lld",&n);
printf("Case %d: ",cut);
if(n%2==1)
{
printf("Impossible\n");
}
else
{
for(long long i=2;i<=n;i+=2)
{
if(n%i==0&&(n/i)%2==1)
{
printf("%lld %lld\n",n/i,i);
break;
}
}
}
}
return 0;
}
Ekka and his friend Dokka decided to buy a cake. They both love cakes and that's why they want to share the cake after buying it. As the name suggested that Ekka is very fond of odd numbers and Dokka is very fond of even numbers, they want to divide the
cake such that Ekka gets a share of N square centimeters and Dokka gets a share of M square centimeters where N is odd and M is even. Both N and M are positive
integers.
They want to divide the cake such that N * M = W, where W is the dashing factor set by them. Now you know their dashing factor, you have to find whether they can buy the desired cake or not.
Input
Input starts with an integer T (≤ 10000), denoting the number of test cases.
Each case contains an integer W (2 ≤ W < 263). And W will not be a power of 2.
Output
For each case, print the case number first. After that print "Impossible" if they can't buy their desired cake. If they can buy such a cake, you have to print N and M. If there are multiple solutions, then
print the result where M is as small as possible.
Sample Input
3
10
5
12
Sample Output
Case 1: 5 2
Case 2: Impossible
Case 3: 3 4
把一个数分成一个偶数和一个奇数 要求偶数尽可能小
#include<cstdio>
int main()
{
int t;
int cut=0;
scanf("%d",&t);
while(t--)
{
cut++;
long long n;
scanf("%lld",&n);
printf("Case %d: ",cut);
if(n%2==1)
{
printf("Impossible\n");
}
else
{
for(long long i=2;i<=n;i+=2)
{
if(n%i==0&&(n/i)%2==1)
{
printf("%lld %lld\n",n/i,i);
break;
}
}
}
}
return 0;
}
相关文章推荐
- 异步的两种写法: async 与 BeginInvoke
- 数字图像处理-----直方图均衡化
- BFS、DFS——求最短通路值
- 堆和栈的区别(转过无数次的文章)
- 设计模式六大原则(5):迪米特法则
- php 安全处理多线程同时写操作同一文件
- hdu1015 Safecracker (DFS)
- PHP之路——PHPStudy虚拟主机
- 排序算法---希尔排序
- 【VS开发】【图像处理】RGB各种格式
- JAVA中初始化数据的方法?
- 关于海量数据查找排序问题
- 欢迎使用CSDN-markdown编辑器
- collectionview使用
- 挑战这十七项编程 锻炼大脑并且提升能力
- Nova 是如何统计 OpenStack 计算资源
- android 子线程中更新界面?被ProgressBar给迷惑了
- 2016第30周六
- POJ 2553 The Bottom of a Graph
- Mac下运行 x86 的 AVD