PAT N 自守數(數字的to string)

2021-10-08 03:25:28 字數 777 閱讀 2780

如果某個數 k 的平方乘以 n 以後,結果的末尾幾位數等於 k,那麼就稱這個數為「n-自守數」。例如 3×92^​2=25392,而 25392 的末尾兩位正好是92,所以 92 是乙個 3-自守數。

本題就請你編寫程式判斷乙個給定的數字是否關於某個 n 是 n-自守數。

輸入格式:

輸入在第一行中給出正整數 m(≤20),隨後一行給出 m 個待檢測的、不超過 1000 的正整數。

輸出格式:

對每個需要檢測的數字,如果它是 n-自守數就在一行中輸出最小的 n 和 nk^​2​​ 的值,以乙個空格隔開;否則輸出 no。注意題目保證 n<10。

輸入樣例:

3

92 5 233

輸出樣例:

3 25392

1 25

no

主要是判斷nk^​2​​ 的末尾數是不是和輸入數字k相等,如果相等,(nk^​2​-k)得到的數末尾應該有與k的位數相等的0,所以,判斷(j·temp·temp-temp)%(int)(pow(10,length)) == 0就行。

code:

#include

using

namespace std;

intmain()

}if(!flag)

}return0;

}

ccf 有趣的數(數字dp)

問題描述 我們把乙個數稱為有趣的,當且僅當 1.它的數字只包含0,1,2,3,且這四個數字都出現過至少一次。2.所有的0都出現在所有的1之前,而所有的2都出現在所有的3之前。3.最高位數字不為0。因此,符合我們定義的最小的有趣的數是2013。除此以外,4位的有趣的數還有兩個 2031和2301。請計...

CCF 201312 4 有趣的數 數字DP

ccf 201312 4 有趣的數 傳送門 這道題似乎就是所謂數字dp,如果沒有接觸過這一類題目,真的是很難會想出完整的方法,畢竟有6個狀態,然後在狀態之間進行遞推.我們定義六種狀態,s0 s5,對每個長度的狀態我們都從其他可能推過來的狀態推過來.為什麼是六種?這六種狀態是哪六種?這些狀態分為四大類...

E 牛牛的隨機數 數字dp

e 牛牛的隨機數 題解 思路就是算二進位制每個位置的貢獻,然後再將每個位置的貢獻加起來就是總貢獻。關鍵是數字dp咋寫 我看了半天就是唯一想不通的地方就是為啥要 lim 0 時才能記憶化轉移,同樣才能給dp賦值。因為當lim 1時說明這個位置有限制所以你列舉的那個數字的數字可能就不是1,就可能多加貢獻...