noi Big String 超級字串

2022-05-16 02:45:11 字數 1156 閱讀 6470

//來自2017青島資訊競賽第一題

總時間限制: 

10000ms

單個測試點時間限制: 

1000ms

記憶體限制: 

131072kb

描述fish在無數次oi競賽的獄煉之後,悟出乙個真理,往往越容易的題目,陷阱越深。由此,fish創作了這道題目。 

fish首先給出兩個短串a=』4567』 (4個字元), b=』123』(3個字元)。反覆進行如下的操作得到乙個長串c。 

(1)c=b+a (例如:a=』4567』 ,b=』123』 c=b+a=』1234567』) 

(2)a=b b=c (上述例子 a=』123』 b=』1234567』) 

請你程式設計找出這個長串的第n個字元。 

輸入第一行包含乙個整數 n (1<=n<=10^9)

輸出僅一行,包含乙個字元,表示這個長串的第n個字元。

樣例輸入

9
樣例輸出

2

比賽發揮不好,明明已經找到正解了,卻卡了一下,沒處理出來

其實很簡單,不要直接處理字串,轉化成數字

可以發現整個字串就是「1234567」不斷拓展出去的

每乙個新子串都可以看做是1234567或它的子串組成的

那麼我們只需要知道第n位是1234567 中的第幾位,而對這個那麼長的子串究竟是什麼根本沒用=。=

用數字存一共有幾位,然後處理

例如9,

我們發現一次運算後c長7,第二次長...

9就在這之間

說明需要進行兩次拓展才有第九位

然而前七位對我們來說是沒用的

所以直接不管

因此九位為就相當於剩下的第二位,小於7,所以直接得到(若大於7只需重複上述過程)

附ac**

#include#include

#include

using

namespace

std;

string

s;int

l,n,pr;

intmain()

n=n-pr;

}cout

<1

];}

超級超級簡單的vim配置

電腦重置之後好多環境都沒了,在lunix環境下的vim方法找到了好多,都沒配置好,這次在網上找到乙個超級簡單的給大家分享一下。話不多說,進入正題 vimplus 簡介vimplus是國內的又乙個大佬打造的乙個vim開發工具包.為 cpp 開發者量身定做.介面漂亮.官網參見github 安裝過程 可以...

A 超級樓梯

有一樓梯共m級,剛開始時你在第一級,若每次只能跨上一級或二級,要走上第m級,共有多少種走法?input 輸入資料首先包含乙個整數n,表示測試例項的個數,然後是n行資料,每行包含乙個整數m 1 m 40 表示樓梯的級數。output 對於每個測試例項,請輸出不同走法的數量 sample input22...

mysql超級使用者 mysql建立超級使用者

在安裝mysql後只有乙個超級管理許可權的使用者root,而且root限制只能在資料庫本機上使用,如果我們要遠端管理mysql咋辦呢?那麼事實上我們需要新增乙個具有超級管理許可權並且可能遠端訪問的超級使用者,我們以增加乙個超級許可權管理使用者admin為例來說明。你可以通過發出grant語句增加新使...