第13屆河南icpc省賽

2022-09-19 02:30:22 字數 1272 閱讀 2115

河南省第十三屆icpc大學生程式設計競賽(重現賽)

簽到題,直接暴力判斷四個點是否相等。

借一張別人的圖

如圖所示建立座標系,根據藍色圈內的序列二分得到\(y\),再經過最多6次旋轉得到最終座標。如果看不太懂這個座標系可以將\(x\)和\(y\)軸來回平移就明白了。觀察6種移動方式下\(x,y\)的改變\((0, 1)(1, 0)(-1, 0)(0, -1)(1, -1)(-1, 1)\)得到結論:\(令d1 = x1 - x2,d2 = y1 - y2\quad ans = d1 * d2 >= 0 ? |d1| + |d2| + 1 : max(|d1|,|d2|) + 1\)

首先尺取預處理出每乙個位置的下乙個合法位置,在對其求字首和。對於每乙個詢問\([l,r]\),二分得到最末的合法位置\(x(x >= l - 1)\),則答案為\((x - l + 1) * (r + 1) - (pre[x] - pre[l - 1])\)

令\(dp[i][j]\)為生成到第\(i\)個字元時匹配到第\(j\)位的期望得分,列舉生成的字元\(c\),找到插入該字元後最大的匹配位置\(j'\)(這一步一般用kmp中的next陣列優化)那麼匹配成功時得分*2即 \(dp[i][j'] = dp[i - 1][j] * (j' == m ? 2 : 1)\quad ans = \sum_ ^ m dp[n][i]\)

做法

找到乙個點和直線使得該直線兩邊點的數量相同,設直線(直線的方向就是箭頭的方向)順時針方向為白點,逆時針方向為黑點,在直線旋轉過程中,如果我們碰到乙個白點,原來的點會變為白點,碰到乙個黑點,原來的點會變為黑點。因此直線兩邊點的數量始終不變,旋轉180°後直線與初始直線平行,所以必然回到原點。
簽到題,如果乙個'*'水平方向與垂直方向上都有'*'那麼它就是原點。

建立trie圖,\(arr_i\)作為字首出現的次數即為\(i\)的子節點個數\(+1\),不作為字首出現的次數即為所有能沿著fail邊跳到\(i\)節點的點及其子節點的個數和,dp即可。注意建圖時要用可持久化陣列優化。

經典樹上階梯博弈,設根節點深度為0,僅當奇數層節點的異或和為0時後手必勝,那麼只要看能否找到乙個異或和為0的子集即可。

可以直接爆搜,也可以分析結論。

貪心,每次找出最大的甜甜圈吃掉,需要用到資料結構。

打牌題,對抗搜尋+記憶化,難點在於實現,**有億點長所以我還沒寫。

區域不大,精度也不高,均勻撒點即可,也可以各種積分。

直接求區間和。

河南省第九屆省賽 通道安全

時間限制 1000 ms 記憶體限制 65535 kb 難度 2描述 alpha 機構有自己的一套網路系統進行資訊傳送。情報員 a 位於節點 1,他準備將乙份情報 傳送給位於節點 n 的情報部門。可是由於最近國際紛爭,戰事不斷,很多通道都有可能被遭到監 視或破壞。經過測試分析,alpha 情報系統獲...

河南第四屆ACM省賽(BOBSLEDDING)

題意 乙個人參加越野比賽,有很多山頭,過這些山頭時不能超過指定的速度,他在剛開始時速度為1,他可以每秒加速或減速1m,或者保持不變,問他途中可以到達的最大的速度 思路 剛開始想的就是模擬,太亂看了別人的解題報告才知道是dp ac include include include include inc...

第十一屆河南省賽ICPC

a 計畫日 dr.kong,作為一名從教多年的老師,跟蹤了大量成績好的學生,發現他們的學習習慣非常規律,有方法 有計畫 有目標 有總結。比如 已考上 大學的李明同學,從小學開始訂學習計畫,達成目標。每經過n天就檢查目標是否完成,寫總結,並確定下乙個學習目標。已知李明在yyyy年mm月dd日星期w訂了...