题目内容
1、 用一个整型数组表示10进制大整数,数组的每个元素存储大整数的一位数字,将这个大整数转换为2进制数输出。
2、 根据输入的数字N,计算N以内(包括N)数据链并统计数据链末尾数字是1的数据个数。例如N=44,则数字链为:44->32->13->10-> 1,其规则为:4²+4²=32,3²+2²=13,1²+3²=10,1²+0²=1。
思路
第一题就是一个很简单的高精度计算加上一个字符串转换,第二题也是单纯的整数和字符串的相互转换,善用itoa即可
代码展示
6_1:
#include <iostream>
#include <algorithm>
#include <map>
using namespace std;
int divide(string &n)
{
int length = n.length();
string new_n;
int num = 0;
for(int i = 0; i < length; i++){
new_n += (10 * num + n[i] - '0') / 2 + '0';
num = (10*num + n[i] - &#