一篇文章讲明白MartianAddition

简介: 一篇文章讲明白MartianAddition

In the 22nd Century, scientists have discovered intelligent residents live on the Mars. Martians are very fond of mathematics. Every year, they would hold an Arithmetic Contest on Mars (ACM). The task of the contest is to calculate the sum of two 100-digit numbers, and the winner is the one who uses least time. This year they also invite people on Earth to join the contest.

As the only delegate of Earth, you're sent to Mars to demonstrate the power of mankind. Fortunately you have taken your laptop computer with you which can help you do the job quickly. Now the remaining problem is only to write a short program to calculate the sum of 2 given numbers. However, before you begin to program, you remember that the Martians use a 20-based number system as they usually have 20 fingers.

Input:

You're given several pairs of Martian numbers, each number on a line.

Martian number consists of digits from 0 to 9, and lower case letters from a to j (lower case letters starting from a to present 10, 11, ..., 19).

The length of the given number is never greater than 100.

Output:

For each pair of numbers, write the sum of the 2 numbers in a single line.

Sample Input:

1234567890

abcdefghij

99999jjjjj

9999900001

Sample Output:

bdfi02467j

iiiij00000

题目意思:二十进制加法运算

。。。。我的代码:

1 #include

2 #include[span style="color: rgba(0, 0, 255, 1)">string.h>

3 int a【200】,b【200】,c【200】;

4 char x【200】,s【200】,t【200】;

5 int main()

6 {

7 int i,j,k,len1,len2,len;

8 while(scanf("%s%s",x,s)!=EOF)

9 {

10 memset(a,0,sizeof(a));

11 memset(b,0,sizeof(b));

12 memset(c,0,sizeof(c));

13 len1=strlen(x);

14 len2=strlen(s);

15 if(len1>len2)

16 len=len1;

17 else

18 len=len2;

19 i=0;

20 for(j=len1-1; j>=0; j--)

21 {

22 if(x【j】<='9'x【j】>='0')

23 a【i++】=x【j】-'0';

24 else

25 a【i++】=x【j】-87;

26 }

27 i=0;

28 for(j=len2-1; j>=0; j--)

29 {

30 if(s【j】<='9's【j】>='0')

31 b【i++】=s【j】-'0';

32 else

33 b【i++】=s【j】-87;

34 }

35 for(i=0; i

36 {

37 c【i】=c【i】+a【i】+b【i】;

38 if(c【i】>19)

39 {

40 c【i+1】=c【i】/20;

41 c【i】=c【i】%20;

42 }

43 }

44 i=len;

45 while(!c【i】)///000001这种情况,0不能输出,将0跳出

46 {

47 i--;

48 if(i==-1)

49 {

50 printf("0");

51 break;

52 }//代码效果参考:http://www.ezhiqi.com/bx/art_4847.html

53 }

54 k=0;

55 for(j=i; j>=0; j--)

56 {

57 if(c【j】>=0c【j】<=9)

58 t【k++】=c【j】+'0';

59 else

60 t【k++】=c【j】+87;

61 }

62 for(j=0; j

63 printf("%c",t【j】);

64 printf("\n");

65

66 }

67 return 0;

68 }

大佬的代码是这样的:

1 #include///学习:可以将要输出的内容写入一个字符数组之中,输出在字符数组中的位置即可

2 int main()

3 {

4 char a【200】,b【200】,s【21】="0123456789abcdefghij";

5 int c【200】,i,j,k,p,q;

6 while(scanf("%s%s",a,b)!=EOF){

7 memset(c,0,sizeof(c));

8 k=0;

9 p=strlen(a);

10 q=strlen(b);

11 j=q-1;

12 for(i=p-1;i>=0||j>=0;i--){

13 if(i>=0){

14 if(a【i】-'a'

15 c【k】+=a【i】-'a'+10;

16 else

17 c【k】+=a【i】-'0';

18 }

19 if(j>=0){

20 if(b【j】-'a'

21 c【k】+=b【j】-'a'+10;

22 else

23 c【k】+=b【j】-'0';

24 }

25 if(c【k】>=20){

26 c【k】%=20;

27 c【k+1】+=1;

28 }

29 j--;

30 k++;

31 }

32 if(c【k】==0)

33 k-=1;

34 for(i=k;i>=0;i--)

35 printf("%c",s【c【i】】);

36 printf("\n");

37 }//代码效果参考:http://www.ezhiqi.com/bx/art_2931.html

38 return 0;

39 }

学习了

上一篇Java数据结构(六)二叉树入门下一篇Java数据结构(七)堆

本文作者:王陸

本文链接:

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

相关文章
|
2天前
|
云安全 人工智能 算法
以“AI对抗AI”,阿里云验证码进入2.0时代
三层立体防护,用大模型打赢人机攻防战
1292 1
|
9天前
|
编解码 人工智能 自然语言处理
⚽阿里云百炼通义万相 2.6 视频生成玩法手册
通义万相Wan 2.6是全球首个支持角色扮演的AI视频生成模型,可基于参考视频形象与音色生成多角色合拍、多镜头叙事的15秒长视频,实现声画同步、智能分镜,适用于影视创作、营销展示等场景。
698 4
|
2天前
|
机器学习/深度学习 安全 API
MAI-UI 开源:通用 GUI 智能体基座登顶 SOTA!
MAI-UI是通义实验室推出的全尺寸GUI智能体基座模型,原生集成用户交互、MCP工具调用与端云协同能力。支持跨App操作、模糊语义理解与主动提问澄清,通过大规模在线强化学习实现复杂任务自动化,在出行、办公等高频场景中表现卓越,已登顶ScreenSpot-Pro、MobileWorld等多项SOTA评测。
556 3
|
3天前
|
人工智能 Rust 运维
这个神器让你白嫖ClaudeOpus 4.5,Gemini 3!还能接Claude Code等任意平台
加我进AI讨论学习群,公众号右下角“联系方式”文末有老金的 开源知识库地址·全免费
|
2天前
|
存储 弹性计算 安全
阿里云服务器4核8G收费标准和活动价格参考:u2a实例898.20元起,计算型c9a3459.05元起
现在租用阿里云服务器4核8G价格是多少?具体价格及配置详情如下:云服务器ECS通用算力型u2a实例,配备4核8G配置、1M带宽及40G ESSD云盘(作为系统盘),其活动价格为898.20元/1年起;此外,ECS计算型c9a实例4核8G配置搭配20G ESSD云盘,活动价格为3459.05元/1年起。在阿里云的当前活动中,4核8G云服务器提供了多种实例规格供用户选择,不同实例规格及带宽的组合将带来不同的优惠价格。本文为大家解析阿里云服务器4核8G配置的实例规格收费标准与最新活动价格情况,以供参考。
237 150
|
9天前
|
机器学习/深度学习 人工智能 前端开发
构建AI智能体:七十、小树成林,聚沙成塔:随机森林与大模型的协同进化
随机森林是一种基于决策树的集成学习算法,通过构建多棵决策树并结合它们的预测结果来提高准确性和稳定性。其核心思想包括两个随机性:Bootstrap采样(每棵树使用不同的训练子集)和特征随机选择(每棵树分裂时只考虑部分特征)。这种方法能有效处理大规模高维数据,避免过拟合,并评估特征重要性。随机森林的超参数如树的数量、最大深度等可通过网格搜索优化。该算法兼具强大预测能力和工程化优势,是机器学习中的常用基础模型。
356 164