牛客不進製乘法(dfs 數學

2022-06-23 02:39:13 字數 969 閱讀 6156

題意:定義運算a⊗b為a乘b無進製的結果,現在給乙個數n,找到最小的a,使得a⊗a等於n

看了這個題就知道了,如果答案是x位數,那麼相乘的數就是2*x-1.

然後還有乙個規律,就是 c[k] = a[1]⊗b[k] + a[2]⊗b[k-1] + … + a[k]⊗[b1]

然後這個c[k]就是[0-9]可以暴力求的。

#include#include

#include

using

namespace

std;

const

int maxn=1e6+100

; char

s[maxn];

intb[maxn];

inta[maxn];

int len=0

;int flag=0

;void dfs(int

pos)

return

; }

if(flag)

for(int i=0;i<=9;i++)

if(sum%10==b[pos])

} }int

main()

if(len%2==0

)

else}}

進製轉換 牛客

將乙個長度最多為30位數字的十進位製非負整數轉換為二進位制數輸出。多組資料,每行為乙個長度不超過30位的十進位製非負整數。注意是10進製數字的個數可能有30個,而非30bits的整數 每行輸出對應的二進位制數。示例1 013 8 0111 1000 這是一道關於大數整數的處理,對於長度為30的整數,...

牛客 樹(dfs序)

這題的思路很精妙,因為我們發現每個點有兩種選擇,一種是塗新的顏色,一種是塗原來出現的顏色 如果按樹形dp的方法做,很難做,因為無法判斷點之間的路徑以及存在的顏色關係。因此想到使用dfs序的方式,轉化成鏈式 這樣該節點塗色之前父親節點也被塗色。而新顏色可以隨便選,原來的顏色必須和父親節點的顏色一樣 i...

牛客網 進製轉換

題目描述 給定乙個十進位制數m,以及需要轉換的進製數n。將十進位制數m轉化為n進製數 輸入描述 輸入為一行,m 32位整數 n 2 n 16 以空格隔開。輸出描述 為每個測試例項輸出轉換後的數,每個輸出佔一行。如果n大於9,則對應的數字規則參考16進製制 比如,10用a表示,等等 分析 較簡單,主要...