第12屆北師大校賽熱身賽第二場 B起床的煩惱

2021-09-07 04:49:00 字數 596 閱讀 5539

cid=3570#problem/43572

題目大意:

nono從一開始數數,他每數乙個數時會計算這個數中1的個數(如211中有兩個1)並對1的個數進行累和。當1的個數之和不小於x時。nono就要起床了。特別須要注意的是,當nono數數達到10000時,nono就會由於數太久而再次睡著……

如今nono定下了x,他想知道他數到多少就須要起床了(或是他能夠再睡一覺)。

明顯是動態規劃問題,通過遞推預處理能夠比較快的得出。a[i]=a[i-1]+sum一邊不斷的累加到數i時,1的個數,一邊當 i%10==1時,更新a[case]=i,即當x=case時。則須要數數數到多少。

附上**:

#include#include#include#includeusing namespace std;

const int max=100001;

int a[max];

void init()

{ int cas=1;

for(int i=1;i>t)

{while(t--)

{int n;

cin>>n;

if(a[n]<10000)

{cout<

第19屆浙大校賽 G Postman(貪心 模擬)

題面 postman 題解 題意 郵局在x 0的位置上,郵差需要給所有的x ai送信,每次最多攜帶k封信,問送完全部的信至少行走多少距離。思路 最優選擇一定是從最遠到最近k個k個走,區別在於最後一步走正軸還是負軸,這決定了哪個方向的最遠距離只需要加一次。模擬兩種方案比較輸出較小值即可。include...

北師大珠海分校第十六屆IT節網路預選賽題解

題意 有n個千層糕,從每乙個千層糕的 a,b 層中選取一層,把所有層數相加剛好可以被5取模,問這個選取有多少種情況。題解 當我們拿第乙個千層糕的其中一層,那麼我們可以得到餘0 餘1 餘4的所有答案。當我們要拿第二個千層糕的其中一層,假設我們選取的層數模5餘1,那麼它和前面餘0相乘可以獲得餘1的答案,...

UESTC 第12屆 ACM 趣味賽一

略先假設沒有 知道這 n 個人中普通市民的人數一定不少於組織中的人 這個條件,我們考慮為什麼沒有辦法將任何人的身份識別出來。不妨這樣想 每乙個人只有兩種情況,要麼說謊話,要麼說真話,而所有說謊話的人和所有說真話的人給出的答案都會是一樣的。也就是說,我們只可能得到兩種答案,要麼是真實的情況,要麼是真實...