PAT1136


title: PAT1136
date: 2021-01-22 20:03:07
tags: PAT


1136

題目:

計(jì)算特殊的Palindrome數(shù)序目,性質(zhì)是ai = ak-i薪前,如果本身不是,則計(jì)算他和自己轉(zhuǎn)置的和是不是情连,最多連續(xù)計(jì)算10次和

范圍:

數(shù)的長(zhǎng)度為1000個(gè)數(shù)字以內(nèi)

分析:

數(shù)的長(zhǎng)度1000內(nèi),所以是個(gè)大數(shù)览效,需要用到大數(shù)加法

解法:

大數(shù)加法算法

  1. 兩個(gè)數(shù)轉(zhuǎn)置(此題以轉(zhuǎn)置却舀,長(zhǎng)度一樣虫几,不用考慮)
  2. 從后往前加,每次計(jì)算每一位的和挽拔,加上上一位的進(jìn)位辆脸,加入字符串
  3. 字符串轉(zhuǎn)置

代碼問題

代碼中的大數(shù)加法沒有處理長(zhǎng)度短的的數(shù)前面有過多的0使長(zhǎng)度大于長(zhǎng)的數(shù)的可能

代碼:

#include<iostream>
#include<string>
#include<algorithm>

using namespace std; 

bool judge_num(string num){
    int len = num.length(); 
    for(int i = 0; i < len/2; i++){
        if(num[i] != num[len - i - 1]) return false; 
    }
    return true; 
}

string add(string a,string b)
{
    string ret="";
    int lena=a.size();
    int lenb=b.size();
    int i=0,j=0;
    int c=0;
    while(i<lena&&j<lenb)
    {
        int now=a[i]-'0'+b[i]-'0'+c;
        c=now/10;
        now=now%10;
        char charnow=now+'0';
        ret+=charnow;
        i++;
        j++;
    }
    while(i<lena)
    {
        int now=a[i]-'0'+c;
        c=now/10;
        now=now%10;
        char charnow=now+'0';
        ret+=charnow;
        i++;
    }
    while(j<lena)
    {
        int now=b[j]-'0'+c;
        c=now/10;
        now=now%10;
        char charnow=now+'0';
        ret+=charnow;
        j++;
    }
    if(c>0)
    {
        ret+="1";
    }
    reverse(ret.begin(),ret.end());
    return ret;
}

int main(){
    freopen("./1136_in", "r", stdin); 
    string num; 
    cin>>num;
    for(int i = 0; i <= 10; i++){
        if(judge_num(num)) {
            cout<<num<<" is a palindromic number."<<endl; 
            break; 
        }
        else if(i <= 9){
            string tmp_num = num; 
            reverse(num.begin(), num.end());
            cout<<tmp_num<<" + "<<num<<" = "; 
            num = add(tmp_num, num); 
            cout<<num<<endl; 
        }
        else {
            cout<<"Not found in 10 iterations."<<endl; 
        }
    }
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市螃诅,隨后出現(xiàn)的幾起案子啡氢,更是在濱河造成了極大的恐慌,老刑警劉巖术裸,帶你破解...
    沈念sama閱讀 222,104評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件倘是,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡袭艺,警方通過查閱死者的電腦和手機(jī)搀崭,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,816評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來猾编,“玉大人瘤睹,你說我怎么就攤上這事〈鸪” “怎么了轰传?”我有些...
    開封第一講書人閱讀 168,697評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)瘪撇。 經(jīng)常有香客問我绸吸,道長(zhǎng),這世上最難降的妖魔是什么设江? 我笑而不...
    開封第一講書人閱讀 59,836評(píng)論 1 298
  • 正文 為了忘掉前任锦茁,我火速辦了婚禮,結(jié)果婚禮上叉存,老公的妹妹穿的比我還像新娘码俩。我一直安慰自己,他們只是感情好歼捏,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,851評(píng)論 6 397
  • 文/花漫 我一把揭開白布稿存。 她就那樣靜靜地躺著,像睡著了一般瞳秽。 火紅的嫁衣襯著肌膚如雪瓣履。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,441評(píng)論 1 310
  • 那天练俐,我揣著相機(jī)與錄音袖迎,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛燕锥,可吹牛的內(nèi)容都是我干的辜贵。 我是一名探鬼主播,決...
    沈念sama閱讀 40,992評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼归形,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼托慨!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起暇榴,我...
    開封第一講書人閱讀 39,899評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤厚棵,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后蔼紧,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體窟感,經(jīng)...
    沈念sama閱讀 46,457評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,529評(píng)論 3 341
  • 正文 我和宋清朗相戀三年歉井,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片哈误。...
    茶點(diǎn)故事閱讀 40,664評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡哩至,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出蜜自,到底是詐尸還是另有隱情菩貌,我是刑警寧澤,帶...
    沈念sama閱讀 36,346評(píng)論 5 350
  • 正文 年R本政府宣布重荠,位于F島的核電站箭阶,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏戈鲁。R本人自食惡果不足惜仇参,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,025評(píng)論 3 334
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望婆殿。 院中可真熱鬧诈乒,春花似錦、人聲如沸婆芦。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,511評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽消约。三九已至肠鲫,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間或粮,已是汗流浹背导饲。 一陣腳步聲響...
    開封第一講書人閱讀 33,611評(píng)論 1 272
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人帜消。 一個(gè)月前我還...
    沈念sama閱讀 49,081評(píng)論 3 377
  • 正文 我出身青樓棠枉,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親泡挺。 傳聞我的和親對(duì)象是個(gè)殘疾皇子辈讶,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,675評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容

  • ????大家新年快樂!????最近一直有朋友問我“考研上機(jī)怎么準(zhǔn)備娄猫?”贱除、“馬上找工作,想考PAT練練手”等...其...
    大美m(xù)ixer閱讀 6,399評(píng)論 11 27
  • 涉及知識(shí)1136 大整數(shù)加法(字符串媳溺,這次用了c++ string)1137 篩選分類排序月幌,取整注意+0.5113...
    zilla閱讀 167評(píng)論 0 3
  • LeetCode 刷題隨手記 - 第一部分 前 256 題(非會(huì)員),僅算法題悬蔽,的吐槽 https://leetc...
    蕾娜漢默閱讀 17,817評(píng)論 2 36
  • 1 摘要 OpenCV使用一系列基礎(chǔ)數(shù)據(jù)類型作為模塊扯躺,特例化這些模版能夠得到大量的數(shù)據(jù)類型,另外你也能夠聯(lián)系你的使...
    RichardJieChen閱讀 2,194評(píng)論 0 6
  • Java實(shí)例教程(下) Java當(dāng)前日期/時(shí)間Java將字符串轉(zhuǎn)換為日期Java當(dāng)前工作目錄Java正則表達(dá)式Ja...
    茶茶點(diǎn)閱讀 7,367評(píng)論 2 32