ICPC/CCPC好題精選

Problem J. Xingqiu’s Joke

你有一個兩個正整數構成的二元組\((a,b),a,b\in[1,10^9]\),你可以進行如下操作:

  • \((a,b)->(a-1,b-1)\)
  • \((a,b)->(a+1,b+1)\)
  • \(g\)\(\gcd (a,b)\)的某個質因子\((a,b)->({a\over g},{b\over g})\)

最少需要多少操作,可以使得\(a=1\)或者\(b=1\),多組詢問\(T\le 300\)

\(f(a,x)\)\(f(\lfloor \frac a g \rfloor,\frac x g)\),\(f(\lceil \frac a g \rceil,\frac x g)\)轉移過來,第二維狀態很少,第一維狀態在於上下取整的選擇。而不管怎麼選擇,除出來的數總在全向下除和全向上除之間。因此狀態數很少,

Problem I. Cloud Retainer’s Game

現在有一個高度爲\(H\),長度無限的空間。你有一個小球,初始位置在\((0,0)\),初始速度爲\((1,1)\)。然而在\(y=0\)\(y=H\)\((x_1,y_1)...(x_n,y_n),n\le 10^5\)有擋板,小球遇到擋板會\((v'_x,v'_y)=(v_x,-v_y)\)。此外,在\((x'_1,y'_1)...(x'_m,y'_m)\)有金幣。小球碰到金幣就得到這個金幣。

你現在可以去除\((x_1,y_1)...(x_n,y_n)\)中任意多個, 問你最多可以得到多少金幣?

Problem K. Circle of Life

有一個長度爲\(n \le 10^7\)的01串,服從“生命遊戲”規則,即:

  • 某個0,如果相鄰的位置恰好有一個1下一輪變爲1

  • 其他情況,無論\(1\)還是\(0\),下一輪都是\(0\)

給定\(n\),請你構造一個串,使得這個串無窮輪也不是全\(0\)

Problem H. Crystalfly

給定一棵\(n\le 10^6\)個節點的樹,樹的節點\(i\)上有螢火蟲\(a_i\)只,你到達這個節點就可以獲得其所有螢火蟲。現在你在根節點,你可以沿着樹邊移動,每秒鐘移動一條邊。然而螢火蟲十分滴珍貴,你到達任何一個節點,他所有相鄰的節點\(u\)將被擾動,\(u\)節點的螢火蟲(如果還有)將在\(t_u\le 3\)秒後消失。請問最多可以得到多少螢火蟲?

J. Two Binary Strings Problem

給定\(n\le50000\)\(a_i\)\(b_i\),定義:

\[f(l,r)=\begin{cases} 1,& \text{if}\;\sum\limits_{i=l}^r a_i > \frac{r-l+1}{2} \\ 0,&\text{otherwise} \end{cases} \]

定義一個\(k\)是“十分珍貴的”,當且僅當對於所有\(i\)\(f(\max\{1,i-k+1\},i)=b_i\)

多組詢問,\(T\le 50000,\sum n \le 50000\)

A. So Many Lucky Strings

給定一串字符串序列\(\{s_1,s_2\dots s_n\},n\le 100,\sum |s_i|\le 10^5\),一個合法的子序列定義爲“字符串依次相接後是一個迴文串”,請問有多少種不同的子序列?

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章