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)\)表示\((a,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\),定義:
定義一個\(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\),一個合法的子序列定義為“字符串依次相接后是一個回文串”,請問有多少種不同的子序列?
C. Colorful Tree
給定一棵\(n\le 10^5\)個節點的樹,每個葉子節點都有一個喜歡的顏色\(c_i\)。你是一個粉刷匠,每次可以粉刷一個節點及其子樹內所有節點。你最少粉刷多少次可以使得所有葉子節點滿意?
L. Karshilov's Matching Problem
你有一些十分珍貴的串\(\{t_1,t_2,\dots t_n\},\sum |t_i| \le 10^5,n\le 10^5\),每個串有個珍貴值\(w_i\)。王大隊長給你一個串\(S,|S|\le 3\times 10^5\),和\(m\le 3\times 10^5\)個要求,要求分別為
- \(1 \quad l \quad c\):將\(S\)的后綴\(l\)個全部改為\(c\)
- \(2 \quad l\):查詢\(S[1\dots l]\)的價值。其中價值定義為:$\sum w_i \times $$(t_i\(在\)S[1\dots l]\(的出現次數\))$。
請你支持這兩個操作。
C. Assign or Multiply
你有一個數\(x\),一開始\(x=1\)。除此之外你還有\(n\le 10^6\)次操作,分為兩種:
- \(x:=a_i\),\(x\)賦值為\(a_i\)
- \(x:=x\times a_i\),\(x\)賦值為\(x \times a_i\)
所有操作對\(p\le 2\times 10^5\)取模,\(a_i\in[0,p)\)
你可以隨意打亂操作順序,請問你可以得到多少種最終的\(x\)?
H. What logic for?
你有兩個串\(S\)和\(T,|S|=|T| \le 10^5\)。司令說\(S\)和\(T\)是K-等價的當前僅當\(S\)可以被K-變換成\(T\)。
其中K-變換的定義為:
- 選取一個長度為\(2k\)的字符串段\(S[b\dots b+2k-1]\),對於\(i=0\dots k-1\)交換\(S[b+i]\)和\(S[b+k+i]\)。
有\(n\le 10^5\)組詢問\((S,T,k)\),每組詢問\(2k\le |S|\)此外\(\sum |S|+|T| \le 10^5\)
對於每個詢問,回答是否是K-等價的
Problem M. Harmony in Harmony
有一塊總面積為\(1\)的\(2D\)土地,定義這個土地的面積划分為\(S=\{s_1,s_2,\dots s_n\},n\le 500\),其中\(|s_1|=|s_2|=\dots=|s_n|=\frac 1 n\),\(s_i\)表示土地,\(|s_i|\)表示面積。並且\(s_i\cap s_j=\empty\quad (i\not =j)\)。值得高興的是,划分出來的土地並不需要是某種特定形狀,甚至可以不連續。因此\(2D\)土地的形狀其實也無所謂。
其中\(S\)和\(A\)都是這個土地的面積划分,\(p\)是枚舉排列。(即由你確定\(S\)和\(A\)的情況下,不斷枚舉排列\(p\)由上式得到一個值,使這個值最小化。)
E. Paimon Segment Tree
有一個長度為\(n\le 5\times 10^4\)的正整數序列,有\(m\le 5\times 10^4\)次修改操作和\(q\le 5\times 10^4\)次詢問操作
- 修改操作\(l_i,r_i,x_i\ge 1\),將\(a_l\dots a_r\)加上\(x\)。記錄修改后當前序列為一個版本\(a^{(i)}\)。
- 查詢操作\(l,r,x,y\),查詢$\sum_{j=x}^y \sum_{k=l}^r (a{(j)}_k)2 $
D. Degree of Spanning Tree
給定一個\(n\le 10^5\)個節點\(m\le 2\times 10^5\)條邊的無向聯通圖,請你生成一個沒有度數大於\(n\over 2\)的點的生成樹。
送分題
給定一個有\(n\le 20\)個節點的有向圖,每條邊走路要\(t_i\),騎單車要\(c_i\le t_i\)的時間。每個節點都有可能有一個共享單車,概率為\(p_i\),價錢為\(p_i\)。由於時間就是金錢,你將一個單位的時間視作一個單位的金錢。你現在要從起點走到終點,最優策略下,期望最少花多少錢?