csp c模擬測試 set read

2022-04-14 03:30:39 字數 646 閱讀 5622

只要求一組特解

像入陣曲一樣就好了(入陣曲真是好題啊$!$)

$(sum[r]-sum[l])\%n==0$

拆成$sum[r]\%n==sum[l]\%n$桶裡存$sum[l]\%n$每次找$sum[r]$桶裡有沒有對應的#sum[l]#

存$tong[0]=1$,別的先查後存

證明一下正確性

$0$自己合法$(sum[r]\%n)==0$不需要找對應

其他都要找乙個來匹配

假設我們有$n+1$個$sum'$值,(這裡假設$sum[0]$也要找乙個匹配)

$\%n$意義下$sum$範圍取遍$[0,n-1]$

$n+1$個$sum$,$n$種取值一定有一種合法

故得證要求$max(cnt[k])-$$\sum \limits_^ cnt[i]$ $ -1$

然後式子稍微一化$maxcnt*2-n-1$求$maxcnt$

然而$n$實在是太巨了$50000000$,出題人卡空間$16mb$$1000ms$怎麼辦

主要解決空間問題

事實上我們設$id$和$cnt$,$cnt==0$時$id設為now$$cnt=1$

$id==now$ $cnt++$

$id!=now$ $cnt--$

最後$id$就是$max$,

csp模擬 模擬測試16

fdasds include using namespace std define cle a memset a,0,sizeof a inline int read const int mod 1e9 7,maxn 1e3 100 int n,m,ans 0 int f maxn maxn int...

csp模擬 模擬測試4

t1是暴力分,t2當時沒有花太多時間去推導,一見到t2就十分害怕,便放過了它,t3的話花了大量的時間推了乙個錯誤的解,以後對於t2這種題不要未戰先怯,一點一點的去推導!那一天我們在教室裡許下約定。我至今還記得我們許下約定時的歡聲笑語。我記得她說過她喜歡吃餅乾,很在意自己體重的同時又控制不住自己。她跟...

CSP模擬 模擬測試5

題意是讓求平均值第k小的連續子區間。發現直接計算無論怎麼優化都是 n 2 的,然後發現這樣找k個的似乎可以考慮二分答案。簡單推一下式子。記 sum i 為字首和,顯然符合條件的區間有 frac leq mid 即 sum j j times mid leq sum i i times mid 預設 ...