結果
問題 |
No.198 キャンディー・ボックス2
|
ユーザー |
![]() |
提出日時 | 2015-10-23 15:54:53 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 900 bytes |
コンパイル時間 | 684 ms |
コンパイル使用メモリ | 59,604 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-07-22 11:32:42 |
合計ジャッジ時間 | 7,353 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 6 WA * 18 TLE * 2 |
ソースコード
#include<iostream> #include<vector> #include<numeric> int main() { int box_num, having_candy_num; std::cin >> having_candy_num >> box_num; std::vector<long long> boxes(box_num); for (int i = 0; i < box_num; i++) std::cin >> boxes[i]; long long ave = std::accumulate(boxes.begin(), boxes.end(), 0) / box_num; long long count = 0; for (size_t i = 0; i < boxes.size(); i++) { if (boxes[i] > ave) { for (size_t j = 0; j < boxes.size(); j++) { while(boxes[i] != ave && boxes[j] < ave){ boxes[i]--; boxes[j]++; count += 2; } } if (boxes[i] != ave) count += boxes[i] - ave; } else if(boxes[i] < ave) { for (size_t j = 0; j < boxes.size(); j++) { while (boxes[i] != ave && boxes[j] > ave) { boxes[i]++; boxes[j]--; count+=2; } } if (boxes[i] != ave) count += ave - boxes[i]; } } std::cout << count << std::endl; return 0; }