藍橋杯 演算法提高VIP 大數加法高精度

2021-10-02 19:45:54 字數 1084 閱讀 9881

時間限制: 1sec 記憶體限制: 128mb

題目描述

輸入兩個正整數a,b,輸出a+b的值。

輸入

兩行,第一行a,第二行b。a和b的長度均小於1000位。

輸出

一行,a+b的值。

樣例輸入42

樣例輸出

6分析:很顯然,整型型別已不滿足條件,需要用字元陣列來解決,將兩個數儲存在字元陣列中,然後逆序儲存到整型陣列中(記得減去『0』),然後兩兩加和,大於十則進一,最後逆序輸出

c語言**如下:

#include

#include

char str1[

100005

],str2[

100005];

int a[

100005

],b[

100005

],c[

100005];

intmain()

for(i=str2_len-

1,j=

0;i>=

0;i--

,j++

) len_max=str1_len>str2_len?str1_len:str2_len;

for(i=

0;i(k)//當最高位加和也大於十,則進一位輸出1

for(i=len_max-

1;i>=

0;i--

)//需要逆序輸出

printf

("%d"

,c[i]);

printf

("\n");

return0;

}

總結:當大於型別值範圍的一些計算,可以轉化為字元型別

c[i]=(a[i]+b[i]+k)%10;

k=(a[i]+b[i]+k)/10;很巧妙的解決了滿十進一

此種題為防止丟分,輸入切勿用gtes(a),要用sanf("%s",a);目的是防止讀入空格,如有兩個數用空格隔開的測試案例則通不過;

藍橋杯 演算法提高VIP 掃雷

掃雷遊戲你一定玩過吧!現在給你若干個n m的地雷陣,請你計算出每個矩陣中每個單元格相鄰單元格內地雷的個數,每個單元格最多有8個相鄰的單元格。0 n,m 100 注意兩個矩陣之間應該有乙個空行,由於oj的格式化這裡不能顯示出來 資料規模和約定 0 n,m 100 輸入包含若干個矩陣,對於每個矩陣,第一...

藍橋杯 演算法提高VIP 班級排名

題目描述 達達在陶陶的影響下,也對學習慢慢的產生了興趣。他在每次考試之後,都會追著老師問,自己在班級的總名次是多少。考試一多,老師也不耐煩了,於是他給了達達所有人的成績,讓他自己去算出自己的排名。可人太多了,達達也無法立即算出來,於是他想讓你幫幫他。資料規模和約定 n 100,名字長度不超過30,分...

藍橋杯 演算法提高VIP 交換Easy

時間限制 1sec 記憶體限制 128mb 題目描述 給定n個整數組成的序列,每次交換當前第x個與第y個整數,要求輸出最終的序列。輸入 第一行為序列的大小n 1 n 1000 和操作個數m 1 m 1000 第二行包含n個數字,表示初始序列。接下來m行,每行兩個整數x,y 1 x,y n 表示要交換...