2483 小b和回文數(列舉)

2021-09-28 13:08:24 字數 853 閱讀 4440

小b覺得回文數很美。

對於乙個正整數x,如果從左到右讀和從右到左讀是一樣的,則稱x為回文數。

例如"123",從右到左讀是"321",所以它不是回文數;而"121"則是回文數。

現在給定整數n,求距離n最近的回文數。即找到乙個回文數x(本題x不能等於n),使得|x-n|最小。如果有多個滿足條件的x,輸出最小的那個。

總是想到了這個漏了那個,一道題做了兩天/(ㄒoㄒ)/~~

最後看了大佬的**又覺得好簡單/(ㄒoㄒ)/~~

思路就是列舉情況判斷,主要是要糾結怎麼列舉好每一種情況

#includeusing namespace std;

typedef long long ll;

ll n,pw[20];

char s[20];

int a[20],len;

vectorv;

ll calc()

//以77800為例

int main()

v.push_back

(pw[len]+1)

;//上界 1000001

v.push_back

(pw[len-1]-1)

;//下界 9999

//cout<" "

<;

if(len&1)//奇長度

}else//偶長度

} ll dif=0x3f3f3f3f3f,ans;

for(int i=0;i<(int)v.size()

;i++)

if(abs(n-v[i])0)//不能為原來的數

cout<;

return 0;

}

1999提高組 B 回文數

注意對16進製制字母進行操作 題目描述 若乙個數 首位不為零 從左向右讀與從右向左讀都一樣,我們就將其稱之為回文數。例如 給定乙個 10 進製數 56,將 56 加 65 即把 56 從右向左讀 得到 121 是乙個回文數。又如 對於 10 進製數 87 step1 87 78 165 step2 ...

列舉平方數 小技巧

給出長度為n的序列a,求有多少對數對 i,j 1 i j n 滿足 ai aj 為完全平方數。第一行乙個整數 n 1 n 105 第二行 n 個整數 ai 1 ai 105 輸出乙個整數,表示滿足上述條件的數對個數。示例1 複製3 1 3 6 複製2 滿足條件的有 1,2 2,3 兩對。有幾個需要注...

計算質數和回文數的小程式

ruby 如下 1 def iszhishu?num 2 count 23 while count num do4 return false if num count 05 count count 16 end7 8 return true9 end10 11 def ishuiwen?num 12...