UVa 550: Multiplying by Rotation
来源:互联网 发布:怎么用网络电视看卫视 编辑:程序博客网 时间:2024/04/28 03:21
这道题可以由第一个乘数的已知末位数向前推出所有位上的数。
例如:
已知所给进制基数为10,第一个乘数的末位数为7,第二个乘数为4
列出如下式的乘法算式:
7
X 4
-------------------------- 进位为0
那么下一步将得到:
87
X 4
-------------------------- 进位为2
8下一步:
487
X 4
-------------------------- 进位为3
48
下一步:
9487
X 4
-------------------------- 进位为1
948
下一步:
79487
X 4
-------------------------- 进位为3
7948
下一步:
179487
X 4
-------------------------- 进位为3
17948
下一步:
179487
X 4
-------------------------- 进位为3
717948
至此得到第一个乘数。
本题按此方法模拟即可得到结果。
我的代码如下:#include <iostream>#include <cstdio>#include <cstring>#include <cmath>using namespace std;int main(){int base,d,f;// base, last significant digit of the first factor, the second factorwhile(cin >> base >> d >> f){int count = 0;//count for the first factor's digits numberint product, carry, next_digit;//product of next_digit and f, carry of product baseed on base, next digit of the fist factornext_digit = d;carry = 0;while(1){count++;product = next_digit*f;if (product+carry == d){break;}next_digit = (product+carry)%base;carry = (product+carry)/base;}cout << count << endl;}return 0;}
- uva 550 - Multiplying by Rotation
- Uva 550 - Multiplying by Rotation
- uva 550 - Multiplying by Rotation
- UVa 550 Multiplying by Rotation
- UVa 550 - Multiplying by Rotation
- UVA 550 - Multiplying by Rotation
- UVa 550 - Multiplying by Rotation
- UVa 550: Multiplying by Rotation
- UVA 550 - Multiplying by Rotation
- Uva 550 - Multiplying by Rotation
- uva 550 - Multiplying by Rotation
- uva 550 Multiplying by Rotation
- uva 550 - Multiplying by Rotation
- UVa 550 - Multiplying by Rotation
- UVa 550 - Multiplying by Rotation
- Uva 550 Multiplying by Rotation
- UVA - 550 Multiplying by Rotation
- UVa 550 Multiplying by Rotation
- IOS开发之----NimbusKit安装使用
- 文件打包工具的思路
- 源代码编译安装subversion-1.8.1.tar.gz
- 从一个程序的Bug解析C语言的类型转换
- VC++ 调用 C#生成DLL的两种方法
- UVa 550: Multiplying by Rotation
- MangoDB 介绍入门
- php4和php5兼容性 strtotime的一个异常
- 不同Linux之间的文件复制 SCP 命令
- 【js学习笔记-044】-- 数组类型
- 子类和父类的构造函数
- 在Servlet中使用开源fileupload包实现文件上传功能
- scp port 22: Connection refused
- Why is Linux called a monolithic kernel?