如果說智商有顏色符相,那我一定是透明的~
快速版題解:
大概就是A題水題拆融;B題勉強算個小模擬,還是水題啊终;C題并查集上統(tǒng)計镜豹;D題二分。四道水題孕索,目測算是手速場逛艰。
具體版:
A
題意:將字符串最后一個字母拿出來,放到頭搞旭,稱為一次操作散怖。比如abcd進行了一次操作就是dabc。問肄渗,能搞出多少個不同的串镇眷。(阿彌陀佛,貧道沒有讀題翎嫡,看樣例看出來的欠动,至于題意對不對,就只能上帝保佑了惑申。)
思路:無
代碼:385A
B
題意:就是用.表示虛的具伍,x表示實的,這樣他就給你了一個東西圈驼,問兩個這樣的東西能不能拼成一個長方形的東西人芽,當然是包括正方形的。但是拼的時候绩脆,只能直接剛萤厅,不能旋轉(zhuǎn)啊橄抹,翻轉(zhuǎn)啊之類的。
思路:直接掃惕味,看看這個圖本身是不是方的楼誓。
代碼:385B
C
題意:有n個節(jié)點,m條無向邊名挥。然后n個節(jié)點里有k個國家中心節(jié)點疟羹。然后呢,任何兩個國家中心節(jié)點之間呢躺同,不能有通路「蟛拢現(xiàn)在呢,要你隨便添邊蹋艺,但是呢剃袍,還是要保證沒有通路。問你最多能加多少邊捎谨。比如A到B有邊民效,B到C有邊,那么A到C就有通路啦涛救,如果A畏邢、C都是國家中心節(jié)點,就不行检吆。
思路:并查集舒萎,然后你就能得到若干個集合,這些集合要么最多含有一個中心節(jié)點蹭沛,要么就沒有中心節(jié)點臂寝。然后呢有中心節(jié)點的集合呢,先在內(nèi)部全部連一遍咆贬,記個數(shù)。沒有中心節(jié)點的全部連到一起掏缎,記個數(shù)煤杀。最后把沒有中心節(jié)點的集合全部連到某一個有中心節(jié)點的集合上,好像要一個一個去試端蛆。
代碼:385C
D
題意:
- 這題有點新意酥泛。首先會給你輸入一個n,告訴你這個矩陣有多大柔袁。然后輸入就停了呆躲,等你輸出了點東西,再有輸入捶索。比如樣例插掂,上手告訴你矩陣是3×3的,然后就沒有了腥例,你要去查詢辅甥。
- 查詢規(guī)則如下:
你先要輸出一個k,表示你要查多少列燎竖,比如樣例一里璃弄,你輸出的3。然后換行构回,輸出k個數(shù)夏块,表示你具體哪些列。然后系統(tǒng)就會回給你每一行纤掸,這些列的最小值是多少脐供。 - 樣例解析:別人告訴了你矩陣了,輸入了3了借跪,但是不會告訴你矩陣是[[0, 3, 2],[5, 0, 7],[4, 8 ,0],]≌海現(xiàn)在你輸入3,然后1,2,3掏愁。然后系統(tǒng)就給你0,0,0歇由。因為每一列都選了,所以每一行最小值都是0托猩。又比如你又進行一次查詢印蓖,查詢2,然后1,2京腥,表示你要查詢只考慮每一行的第1、2列的情況下的最小值他宛。那第1行就是min(0,3)欠气,第2行就是min(5,0),第3行是min(4,8)队塘,所以系統(tǒng)回你0,0,4。
- 然后呢遮怜,題目要你求什么呢鸿市?排除對角元(aii)的每行的最小值。但是你的查詢最多只能有20次陌凳。
- 然后題干提示你了合敦,你輸出一次查詢之后谒获,記得刷新,怎么刷新看題目裸准。
思路:
- 首先呢赔硫,得有個二分的直覺。我第一直覺是权悟,先查左半邊(1n/2)推盛,再查右半邊(n/2+1n)耘成。這樣呢,原矩陣就等分成了4份撒会,左上角师妙、右下角都有對角元,所以肯定是0怔檩,但是呢左下角,右上角的就都查詢到了溜歪。然后呢,發(fā)現(xiàn)左上角膊爪,右下角都和原問題一個形式,就能遞歸形式求解啦赃额。
- 但是轉(zhuǎn)念一想就發(fā)現(xiàn)不對跳芳,一層層遞歸下去飞盆,查詢次數(shù)是n次。人家的n可是1000城看,但是你最多只能搞20次查詢测柠。
- 然后呢鹃愤,按這個思路,把查詢區(qū)間展開一下凹耙。比如n=10,按直覺的做法备典,上手查1-5,然后查6-10拌屏。接著展開1-5倚喂,查1-3端圈,再查4-5。再展開6-10刑巧,查6-8和9-10啊楚。然后你就發(fā)現(xiàn)其實1-3和6-8可以一起查恭理。
現(xiàn)在可能還不夠明顯颜价,我們再展開一層。下一層就是查1-2和3-3(對就查著1列)和4-4和5-5和6-7和8和9和10未荒,然后你就發(fā)現(xiàn)1-2寨腔、4-4迫卢、6-7乾蛤、9可以一起查,剩下的也是可以一起查酥艳。 - 所以榛臼,還是之前二分的直覺沛善,一直拆下去金刁,拆到只查1列的那一層,你就能得到一個二叉樹产捞。然后從底往上查坯临,同一層的左兒子一起查看靠,右兒子一起查挟炬。相當于每層查兩次。
- 然后你看1024這么拆下來也就10層空幻,每層查2次秕铛,剛剛好20次但两。
代碼:385D
E
沒看谨湘,有生之年爭取填坑。