【jzoj5343】【NOIP2017模擬9.3A組】【健美貓】
description
solution
可以把點投射到以i座標為x座標,以a[i]為y座標的二維平面,考慮維護兩條斜率為1直線,點到直線豎直距離和即為答案,分別為維護多少個點在直線上,用兩個桶維護即可,座標分別為到y=x豎直距離和到(n,0)曼哈頓距離。
code
#include<cstdio>
#include<cmath>
#include<cstring>
#include<algorithm>
#define LF double
#define LL long long
#define ULL unsigned LL
#define fo(i,j,k) for(LL i=j;i<=k;i++)
#define fd(i,j,k) for(LL i=j;i>=k;i--)
#define fr(i,j) for(LL i=begin[j];i;i=next[i])
using namespace std;
LL const mn=4*1e6+2,inf=1e9+7;
LL n,a[mn],cnt[mn],cn2[mn];
LL read(){
char ch=getchar();
while((ch!='-')&&((ch<'0')||(ch>'9')))ch=getchar();
LL op,v=0;
if(ch=='-' )op=-1;
else op=1,v=ch-'0';
ch=getchar();
while((ch>='0')&&(ch<='9'))v=v*10+ch-'0',ch=getchar();
return op*v;
}
int main(){
freopen("d.in","r",stdin);
freopen("d.out","w",stdout);
n=read();
fo(i,1,n)a[i]=read();
LL up=0,tmp=0;
fo(i,1,n){
tmp+=abs (a[i]-i);
if(a[i]>i)cnt[a[i]-i]++;
up+=a[i]>i;
}
LL ans=tmp,up2=0;
fd(i,n,2){
tmp+=i-1-up*2;
up-=cnt[n-i+1];
tmp+=a[i]+1-abs(a[i]-n-1);
cn2[a[i]+n-i]++;
up2++;
tmp+=n-i+1-up2*2;
up2-=cn2[n-i+1];
ans=min(ans,tmp);
}
printf("%lld",ans);
return 0;
}
相關推薦
【jzoj5343】【NOIP2017模擬9.3A組】【健美貓】
description solution 可以把點投射到以i座標為x座標,以a[i]為y座標的二維平面,考慮維護兩條斜率為1直線,點到直線豎直距離和即為答案,分別為維護多少個點在直線上,用兩個桶
【NOIP2017模擬9.3A組】摘果子
Description Input Output Sample Input 7 9 39 6 13 2 22 6 7 4 -19 5 28 6 -17 1 2 1
[JZOJ5344]【NOIP2017模擬9.3A組】摘果子
Description Solution 樹形依賴揹包裸模型 F[i][j]表示表示DFS序上第i~N個已經做完了,重量為j F[i][j]=max(F[i+1][j−weight[
【jzoj5340】【NOIP2017模擬9.2A組】【春思】
description solution 分解質因數然後等比數列求和,可能沒有逆元(本程式沒有處理這種情況),這時候需要特殊處理。 code #include<cstd
JZOJ5372.【NOIP2017提高A組模擬9.17】貓鏈表+貪心+堆優化
margin targe sga gin bt5 ie8 usm shu auc x壹鼐順51比http://shequ.docin.com/txqq_cb3d1e346f 惹M3桓7O2疽http://www.docin.com/app/user/userinfo?use
jzojs 5384. 【NOIP2017提高A組模擬9.23】四維世界
Description 眾所周知,我們常感受的世界是三維的。 Polycarp突然對四維空間產生了興趣,他想對四維空間進行一些研究。但是在此之前,他必須先對三維世界瞭解透徹。 於是Polycarp決定從零維,也就是一個點,開始他的研究。我們把一個點放在三維空間中,Polycarp把這
【JZOJ5353】【NOIP2017提高A組模擬9.9】村通網【最小生成樹】
題目大意: 題目連結:https://jzoj.net/senior/#main/show/5353 為了加快社會主義現代化,建設新農村,農夫約(Farmer Jo)決定給農莊裡每座建築都連上網際網路,方便未來隨時隨地網購農藥。 他的農莊很大,有N 座建築,但地理位置偏僻,網路訊號很
【JZOJ5354】【NOIP2017提高A組模擬9.9】導彈攔截【網路流】【DP】
題目大意: 題目連結:https://jzoj.net/senior/#main/show/5354 某國為了防禦敵國的導彈襲擊,發展出一種導彈攔截系統。 敵國的導彈形成了立體打擊,每個導彈可以抽象成一個三維空間中的點(x; y; z)。攔截系統發射的炮彈也很好地應對了這種情況,每一
【jzoj5346】【NOIP2017提高A組模擬9.5】【NYG的揹包】【貪心】
description solution 考慮貢獻為正的,顯然花費a最少先做,考慮貢獻為負的,可以將ab調轉過來,那顯然花費最少的先做,也就是b最小的先做。 code #include<
【jzoj5389】【NOIP2017提高A組模擬9.26】【解夢】
description DYY 很善於解夢,昨晚,他夢見自己來到了一個高度發達的國度。 眾所周知,我們現在有極為常用的三級運算,+、、^。其中,a*b=a+a+a+…+a(b 個a),a^b=a
【jzoj5360】【NOIP2017提高A組模擬9.12】【Shorten Diameter】
description 給定一棵有n 個點的樹,現要求不斷刪點直到樹的直徑<=K,求最少需要刪除的點數。 一個點可以被刪掉當且僅當該點的度數為1。 保證樹的形態為隨機生成(請勿過度解
JZOJ 5377. 【NOIP2017提高A組模擬9.19】開拓
Description Input Output Sample Input 5 50 50 10 1 10 1 20 2 10 2 20 1 30 Sam
【jzoj5350】【NOIP2017提高A組模擬9.7】【陶陶摘蘋果】【動態規劃】
description solution 題目的意思是板凳不可重疊,資料不能直接摘蘋果。對蘋果排序,對凳子按r從小到大排序。設f[i][j]表示前i個凳子,選了j個,最後一個選了i的最大貢獻,列
JZOJ5384. 【NOIP2017提高A組模擬9.23】四維世界
Description 眾所周知,我們常感受的世界是三維的。 Polycarp突然對四維空間產生了興趣,他想對四維空間進行一些研究。但是在此之前,他必須先對三維世界瞭解透徹。 於是Polycarp決定從零維,也就是一個點,開始他的研究。我們把一個點放在三維
JZOJ5372. 【NOIP2017提高A組模擬9.17】貓 連結串列+貪心+堆優化
題意:一個長度為n的環,每個點有貢獻,取了一個就不能取他的相鄰,問取1-n/2個的最優方案是多少。 DP可能會掛,我自己試了試好像會出點問題= =畢竟是環,如果類似這種問題,不能拆環一般就不要DP。
【NOIP2017模擬8.5】隊伍統計
優先級 con isp pla cnblogs noip 技術分享 freopen 100% Description 現在有n個人要排成一列,編號為1->n 。但由於一些不明原因的關系,人與人之間可能存在一些矛盾關系,具體有m條矛盾關系(u,v),表示編號
【NOIP2017模擬8.8】Trip
關系 pan 根據 大於 二叉 計算 我們 else freopen Description 多年之後,worldwideD厭倦競爭,隱居山林。 他的家鄉開始發展起了旅遊業,在一條很長的主幹道上,有N個旅遊景點,按順序編號為1到N。根據遊客們
【NOIP2016提高A組模擬9.17】小a的強迫癥
ret include sin main img int 我們 scanf can 題目 分析 題目要求第i種顏色的最後一個珠子要在第i+1種顏色的最後一個珠子之前, 那麽我們從小到大枚舉做到第i種,把第i種的最後一顆珠子取出,將剩下的\(num(i)-1\)個珠子插入已
【NOIP2016提高A組模擬9.15】Osu
oid std lib 最大 algorithm ios d+ -a gin 題目 分析 考慮二分答案, 二分小數顯然是不可取的,那麽我們將所有可能的答案求出來,記錄在一個數組上,排個序(C++調用函數很容易超時,手打快排,時間復雜度約為\(O(>8*10^7)\)
【NOIP2016提高A組模擬9.17】序列
log cstring 表示 inline space cst tdi n) sca 題目 分析 首先用\(a_i\)表示達到目標的步數\(B_i-A_i(mod 4)\) 根據粉刷柵欄,先不管mod 4的情況,答案就是\(\sum\max(a_i-a_{i+1},0)\