Codeforces Round #523 (Div. 2) B. Views Matter
阿新 • • 發佈:2018-11-26
可能 con 並且 滿足 span div 格子 方法 color
B. Views Matter
題目鏈接:https://codeforc.es/contest/1061/problem/B
題意:
給一個類似棋盤的東西,對於每一列都放有格子,問在無重力的條件下,最多可以抽取多少個格子,並且使縱向視圖和橫向視圖保持原樣。
題解:
這題還是采用貪心的方法,先排個序,這並不影響結果。
對於每一列,肯定有一個棋子來滿足縱向視圖,然後盡可能地將它往高處放來滿足橫向視圖,前提是高度低於它的橫向視圖已經有棋子了。
代碼如下:
#include <bits/stdc++.h> using namespace std; typedef long long ll;const int N = 100005; int n,m; int a[N]; ll sum = 0; int main(){ cin>>n>>m; for(int i=1;i<=n;i++) cin>>a[i],sum+=a[i]; sort(a+1,a+n+1); int y = 0,x = 0; for(int i=1;i<=n;i++){ x++; if(a[i]>y) y++; } ll ans = 0; ans = a[n]-y+x; printf("%lld",sum-ans); return 0; }
Codeforces Round #523 (Div. 2) B. Views Matter