⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 1205.cpp

📁 zju_acm部分代码!都是自己做 有些事基本题目!题目还可以
💻 CPP
字号:
#include <iostream>
#include <ctype.h>
#include <string>
const int MAXN = 110;
using namespace std;
void add(int *a, int *b, int &l1, int &l2)
{
    int c[MAXN];
    memset(c, 0, sizeof(c));

    int l = l1 > l2 ? l1 :  l2;
	int i;

    for ( i = 0; i != l; ++i)
	{
        c[i] += a[i] + b[i];
        c[i + 1] += c[i] / 20;
        c[i] %= 20;
    }
    for ( i = 0; i != MAXN; ++i) 
		a[i] = c[i];//copy c 到 a;
		 l1 = MAXN;
    while (a[l1] == 0) 
		--l1;		//找到a的长度;
}
int main()
{
    int  a[MAXN], b[MAXN], l1, l2;

    string str1, str2;
		int i;
 
        memset(a, 0, sizeof(a)); 
    	memset(b, 0, sizeof(b));

        l1 = 0; l2 = 0;

        while (cin >> str1 >> str2)
		{
			
            l2 = str2.size(); 
			memset(b, 0, sizeof(b));
			l1=str1.size();
			memset(a , 0 ,sizeof(a));
			

            for ( i = 0; i != l1; ++i) 
				if(isalpha(str1[i]))
					a[l1- i - 1] = str1[i] - 'a' + 10;
				else
					a[l1- i - 1] = str1[i] - '0';

			for(i = 0 ; i != l2 ; ++i)
				if(isalpha(str2[i]))
					b[l2 - i -1] = str2[i] - 'a' +  10 ;
				else
					b[l2 - i -1] = str2[i] - '0';

            add(a, b, l1, l2);
			str2 = "";

			for (int i = 0; i != l1; ++i) 
				if(a[i]>=10)
					str2 = (char)(a[i] + 87 ) + str2 ;
				else
					str2 = (char)(a[i] + '0') + str2;

			while (str2[0] == '0' && str2.size() != 1) 
				str2 = str2.substr(1);
			cout << str2 << endl;

        }
  
        
   
    return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -