整数对问题
来源:互联网 发布:淘宝薇薇家叶罗丽娃娃 编辑:程序博客网 时间:2024/05/16 00:11
/*
* 整数对问题
* tanliboy <tanliboy2003@yahoo.com.cn> Nov.26 2008
*/
#include<iostream>
#include<vector>
using namespace std;
long pow(int cnt)
{
long res = 1;
while(cnt--)
{
res *= 10;
}
return res;
}
int main()
{
long N;
cin>>N;
int len = 0;
long num = N;
while(num>0)
{
num/=10;
len++;
}
for(int base = 0;base < len ;base++)
{
for(int n = 0;n<=9;n++)
{
if(0 == n && base == len-1)
{
// the first number can't be 0.
continue;
}
long radix = pow(base);
long num = N - n * radix;
long a = num/radix;
a/=11;
if(a<0 )
{
continue;
}
long b = num - a * radix * 11;
if(b<0 || 0!= b%2 || radix <= b/2)
{
continue;
}
b/=2;
cout<<(a*10 + n)*radix +b<<" + "<<a*radix + b <<" = "<<N<<endl;
}
}
}
* 整数对问题
* tanliboy <tanliboy2003@yahoo.com.cn> Nov.26 2008
*/
#include<iostream>
#include<vector>
using namespace std;
long pow(int cnt)
{
long res = 1;
while(cnt--)
{
res *= 10;
}
return res;
}
int main()
{
long N;
cin>>N;
int len = 0;
long num = N;
while(num>0)
{
num/=10;
len++;
}
for(int base = 0;base < len ;base++)
{
for(int n = 0;n<=9;n++)
{
if(0 == n && base == len-1)
{
// the first number can't be 0.
continue;
}
long radix = pow(base);
long num = N - n * radix;
long a = num/radix;
a/=11;
if(a<0 )
{
continue;
}
long b = num - a * radix * 11;
if(b<0 || 0!= b%2 || radix <= b/2)
{
continue;
}
b/=2;
cout<<(a*10 + n)*radix +b<<" + "<<a*radix + b <<" = "<<N<<endl;
}
}
}
- 整数对问题
- 问题: 寻找整数对!
- 整数对
- 整数对
- 整数对
- 整数对
- 整数对
- 分治算法-最近点对问题、大整数相乘
- C语言版对不定个数整数输入问题
- hdu 1271 整数对
- HDU-1271 整数对
- HDU 1271 整数对
- hdu 1271 整数对
- HDU1271 整数对
- HDU 1271 整数对
- 整数对 hdu-1271
- hdu1271整数对 (数学题)
- HDU1271:整数对
- NetBeans 时事通讯(刊号 # 36 - Nov 26, 2008)
- SQL字符串中取字母及数字的两个自定义函数
- 关于Smartphone的智能手机键盘输入法的疑惑
- 转向B/S
- C#后台调用前台javascript的五种方法
- 整数对问题
- 在ASP.NET使用javascript的一点小技巧
- VI命令使用大全
- 安装mysql 遇到的麻烦 求解答
- DWR使用
- Ascent代码分析3-World之对象与脚本
- SQL SUM 除去第二条记录..
- Oracle Faq(Oracle TAF的配置)
- 给初学者点建议(摘录)