1001 hdu 4320 http://acm.hdu.edu.cn/showproblem.php?pid=4320
題意:
V寫下一個A進制的任意有限小數,如果S能将其翻譯成B進制的有限小數,則S赢,輸出Yes 否則V赢輸出No;
思路:
隻要A的所有質因子都包含在B中,S就能赢(證明沒看懂!!求指教)
這裡注意:
(N表示A,B的極限值)
1:一個數i的質因子,至多隻會存在一個大于sqrt(i)的。是以這裡我們隻要枚舉出小于sqrt(N)的所有質數即可,然後用所有小于sqrt(j)的質數來查找j的質因子,同時j也要做相應的除法把枚舉道德質因子除去,當枚舉完所有小于sqrt(j)質數時,j如果>1說明存在大于sqrt(j)的質因子,這時的質因子也就是j本身看了,是以要檢查一下B是否還包含這個質因子,因為當存在大于sqrt(N)的質數時,我們沒有枚舉出來,是以必須在後邊要算。
View Code
還有一個解法:首先明确每一個大于1的整數都能分解成質因數乘積的形式,還要要知道兩個數的最大公約數就是這兩個數的公共質因子的乘積,是以我們隻要不斷取他們的公共質因子的乘積,直到a隻剩下1時,說明a的所有質因子都包含在b中,就是不斷地取a,b的最大公約數,然後a再除去最大公約數。
1004:hdu 4232 http://acm.hdu.edu.cn/showproblem.php?pid=4323
給出n個數字字元串,然後給出m個詢問,每個詢問包括一個數字字元串和一個最大值,要求在n個字元串裡尋找與查詢字元串的字元串編輯距離小于最大值的字元串個數。
直接利用dp求查詢字元串與n個字元串的編輯距離,求解即可。
1005: hdu 4324 http://acm.hdu.edu.cn/showproblem.php?pid=4324
給定n個人的愛情圖,如果a愛b那麼b一定不愛a,而且題目保證任意兩點都存在一條邊(there is love between any of two people, if A don’t love B, then B must love A)
關系矩陣map[i][j] = 1表示i愛j,那麼j一定不愛i,讓你找出是否存在三角戀,即:A loves B, B loves C and C loves A.
按照官方解題報告的第二種方法做的,不是好了解;當第i個點加入時,(0 --- i - 1)裡面肯定有i喜歡的将他們分到左邊,那剩下的就是i不喜歡的了,也即喜歡i的了,(這裡保證每條邊i都會和其他n-1條變有關系,要麼喜歡要麼不喜歡),對于每次枚舉i,我們在(0~i-1)的範圍看下有多少個i指向的點(剩下的就是指向i的點),同時算下i指向的點的出度和。就可以知道這些 i指向的點 指向 指向i的點(剩下的點)的數目,如果 num * (num - 1) / 2 < sumout 那麼就是被指向的點有指出去了,這樣就形成了3元環。 否則,剩下的就是更新下出度即可,繼續執行下一個節點。
1006 hdu 4325 http://acm.hdu.edu.cn/showproblem.php?pid=4325
給出每朵花的開花時間段[si,ti],存在又在同一時間段開花的,詢問每個時間點pi幾朵花在開放;
本來一道很簡單的線段數的成端更新+單點詢問+離散化的題目,可是我在離散化的時候隻離散化了輸入的時間段的端點,在詢問時就出了問題,跳了很長時間很是不對,後來把所有的點都離散化後建樹,做操作就簡單的跟屎似的了,沒有構思好就看似是敲代碼。不行啊。。