當(dāng)前位置:
首頁 >
Half of Same 思维,模拟,调试
發(fā)布時間:2025/3/19
28
豆豆
生活随笔
收集整理的這篇文章主要介紹了
Half of Same 思维,模拟,调试
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
題意 :
- 給一序列,每次操作可以讓一個元素減去k(k>=1),求最大的k使得若干次操作后序列中至少一半元素相等,若k為任意大,則輸出-1
思路 :
- 首先枚舉任意兩個數(shù)的差,那么答案k一定存在于這些差的因數(shù)中,所以枚舉每組差的因數(shù),以當(dāng)前差的被減數(shù)為媒介(最終至少一半數(shù)等于這個數(shù))判斷當(dāng)前k是否滿足條件,取滿足的最大值
- 特別地,當(dāng)原序列中有一個元素已經(jīng)大于等于元素的個數(shù)的一半(n為奇數(shù)是(n+1)/2,n為偶數(shù)是n/2,但由于向下取整,可以統(tǒng)一為(n+1)/2),那么k為任意大,輸出-1
總結(jié)
以上是生活随笔為你收集整理的Half of Same 思维,模拟,调试的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: All are Same 思维,gcd
- 下一篇: Gardener and Tree 图论