2020/9/13 下午,正好大學開學報到
之前聽說比賽比較簡單,看前兩題感覺有點簡單的離譜了
讀了好一會兒 T3 ,貌似就是拓撲排序,寫一發90 WA on test 6,以為環沒判對?看了幾分鍾錯沒看出來,之后一直惦記這個事
看到 T4 幾何就想放棄,第一開始沒看樣例以為是直線與黑洞交的那部分換成弧即可,發現樣例過不去,趕快寫個點都在黑洞上的跑
T5 看起來有點不可做,稍微分析一下就發現狀態只用記錄當前在那個密碼本,串在AC自動機的哪兒,然后每次枚舉加哪個串就能過了,我記得好像 \(O(n^3 m)\)
總害怕當時只有pre_test,去了問了下監考,提交顯示的就是最終成績嗎,“也不是,你可以再交啊”
再看下 T3 發現我有一個越界的數組操作,就是不越界也可以被多組數據卡爆,加兩個字符就過了
看到樣例貌似是做切線,二維只有2個切點,三維就是一個圓,當場放棄高維,二維只有2個點我還能做,趕緊寫了,WA好久,以為是自己acos海倫公式之類產生精度問題,最后發現不需要經過黑洞判錯了,然后很快發現那種情況只用判圓心與那兩個點組成的三角形的以那兩個點為頂點的角是不是鈍角即可,再判是不是都在黑洞上后加個判 \(n=2\),交上去55,之前過的一個點TLE掉了,到最后也沒再卡過去
455 top 0.17% 果然野雞比賽沒人打
出來聽從沒見過的學長們交流一發,T4 高維其實只用考慮圓心和那兩個點所在的平面,就轉化成了只用距離的二維情況,想想二維我確實只用了距離,真是白給
UPD2 :去掉了 n==2
和改下算角度的,注釋是改前的
ld r1=0;//ld r1=acos((u.x[1]-a[1])/f);if(u.x[0]<a[0])r1=-r1;
ld r2=acos((f*f+g*g-w*w)/2/f/g);//ld r2=acos((v.x[1]-a[1])/g);if(v.x[0]<a[0])r2=-r2;
就tm過了
UPD1 :居然是校rank1