結果
問題 | No.77 レンガのピラミッド |
ユーザー |
|
提出日時 | 2015-06-19 18:25:58 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 2 ms / 5,000 ms |
コード長 | 562 bytes |
コンパイル時間 | 1,274 ms |
コンパイル使用メモリ | 157,660 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-07-07 03:56:38 |
合計ジャッジ時間 | 2,101 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 5 |
other | AC * 20 |
ソースコード
#include <bits/stdc++.h> #include <algorithm> using namespace std; #define rep(i,s,n) for(int i=(s); i<(int)(n); ++i) int n; int a[1000]; int main(){ cin >> n; int s = 0; rep(i, 0, n) { cin >> a[i]; s += a[i]; } int mi = 0x3fffffff; for(int k = 1; k * k <= s; k++){ int d = 0; rep(j, 0, k - 1) { int t = a[j] - j - 1; d += max(0, t); } rep(j, 0, k) { int t = a[j + k - 1] - k + j; d += max(0, t); } rep(j, 2 * k - 1, n) { d += a[j]; } mi = min(mi, d); } cout << mi << endl; }