結果
| 問題 |
No.361 門松ゲーム2
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2016-04-18 01:27:08 |
| 言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,113 bytes |
| コンパイル時間 | 617 ms |
| コンパイル使用メモリ | 77,636 KB |
| 実行使用メモリ | 6,824 KB |
| 最終ジャッジ日時 | 2024-10-04 12:49:38 |
| 合計ジャッジ時間 | 1,437 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 22 WA * 6 |
ソースコード
#include <iostream>
#include <algorithm>
#include <vector>
#include <iomanip>
using ll = long long int;
int max3(int a, int b, int c){
return std::max(a, std::max(b, c));
}
int min3(int a, int b, int c){
return std::min(a, std::min(b, c));
}
bool diff3(int a, int b, int c){
return (a!=b && b!=c && c!=a);
}
bool isKadomatsu(int a, int b, int c){
return (diff3(a, b, c) && (b==max3(a, b, c) || b==min3(a, b, c)));
}
int main(){
std::ios::sync_with_stdio(false);
std::cin.tie(0);
int L, d;
std::cin >> L >> d;
std::vector<int> dp(500, 0);
for(int l=6; l<=L; ++l){
for(int i=1; i<l-2; ++i){
for(int j=i+1; j<l-1; ++j){
int tallest=l-i-j;
if(j>=tallest){
break;
}
if(tallest-i>d) continue;
int tmp = dp[i]+dp[j]+dp[tallest]+1;
if(tmp%2==0) continue;
dp[l]=1;
}
}
//std::cout << "dp[" << l << "] = " << dp[l] << "\n";
}
std::cout << ((dp[L]==1) ? "kado\n" : "matsu\n");
return 0;
}