結果
問題 | No.149 碁石の移動 |
ユーザー |
![]() |
提出日時 | 2016-09-24 11:59:39 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 2 ms / 2,000 ms |
コード長 | 1,115 bytes |
コンパイル時間 | 749 ms |
コンパイル使用メモリ | 94,952 KB |
実行使用メモリ | 6,820 KB |
最終ジャッジ日時 | 2024-12-24 03:20:51 |
合計ジャッジ時間 | 1,382 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 13 |
ソースコード
#define _USE_MATH_DEFINES //M_PI(3.14) #include <iostream> //std::cout, std::cin #include <string> //std::string #include <vector> //std::vector #include <valarray> //std::valarray 数値のみの一次配列 #include <algorithm> //std::sort #include <time.h> //localtime_s #include <cstdlib> //abs #include <cmath> //abs, std::pow, sqrt, sin, cos,round,floor #include <fstream> //std::ifstream #include <iomanip> //std::setprecision #include <random> //std::random(C++11) #include <numeric> //std::accumulate int main(void) { //test用 //std::ifstream in("test.txt"); //std::cin.rdbuf(in.rdbuf()); //MODULO 10^9+7用 //const unsigned int M = 1000000007; int Aw, Ab, Bw, Bb, C, D; std::cin >> Aw >> Ab >> Bw >> Bb >> C >> D; int ans = 0; if (Bw >= D) { ans = Aw + D; if (Ab < C) { ans -= C - Ab; } } else { if (Aw + Bw <= D) { ans = Aw + Bw; } else { if (D - Bw >= C) { ans = Aw + Bw; } else { if (Ab >= C - (D - Bw)) { ans = Aw + Bw; } else { ans = Aw - C + Ab + D; } } } } std::cout << ans << std::endl; }