上測1

雖然這簡拼有點奇怪

T1

對着一個不是很對的式子推了一個小時然後掛了,所以來詳細分析一下我推錯的那個式子。

對於\(x*(k-x)=k*(k-y)\)其中\(k\)爲常數,這個解爲正整數的不定方程,可以簡單構造幾組解,令\(g=gcd(x,k)\),那麼有\(\frac{x}{g}*(k-x)=\frac{k}{g}*(k-y)\),因爲兩個類似分母的值是互質的,所以令\(k-y=\frac{x}{g}\)\(k-x=\frac{k}{g}\),枚舉\(k\)的因子作爲最大公約數然後就能解出\(x\)最後得到\(y\)並檢驗是否合法即可。

但是,該做法並不能得到所有解,這是需要注意的。

由題意可以推出我們需要求的實際上只是\(n|i^2\)的個數,考慮什麼時候\(i^2\)能夠整除\(n\),當且僅當分解質因子後\(n\)的各個質因子都在\(i\)中出現並且個數大於\(n\)中的除以2上取整的結果。

很顯然可以通過暴搜搜索出結果,但是這題只關注結果是多少,所以可以將每個數視作合法的最小的那個數的倍數,然後除一下就完了,挺簡單的但是考場上想自閉了。

T2

容易發現如果有兩個相鄰的數不能整除,那麼這裏一定要斷開,如果這個數能加進去,當且僅當它和前一個數的最小公比和原序列一樣,最小公比即不能將這個公比寫作某個數的\(k\)次方的形式,因爲序列不會很長所以可以直接暴力枚舉。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章