結果
| 問題 |
No.257 N言っちゃダメゲーム (3)
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2016-02-05 20:31:09 |
| 言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
| 結果 |
WA
(最新)
AC
(最初)
|
| 実行時間 | - |
| コード長 | 997 bytes |
| コンパイル時間 | 1,316 ms |
| コンパイル使用メモリ | 158,936 KB |
| 実行使用メモリ | 25,604 KB |
| 平均クエリ数 | 1.97 |
| 最終ジャッジ日時 | 2024-07-16 08:33:12 |
| 合計ジャッジ時間 | 4,874 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | WA * 30 |
コンパイルメッセージ
main.cpp: In function ‘int main(int, const char**)’:
main.cpp:52:15: warning: ‘m’ may be used uninitialized in this function [-Wmaybe-uninitialized]
52 | cout << m << endl;
| ^
ソースコード
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define rep(i,n) for(int i=0;i<(n);++i)
#define each(itr,c) for(__typeof(c.begin()) itr=c.begin(); itr!=c.end(); itr++)
#define mp make_pair
#define pb push_back
#define fi first
#define sc second
int main(int argc, char const *argv[]) {
int n,k;
cin >>n >>k;
int e; //敵の入力
if(n-1<=k){//初ターンで勝てる
cout << n << endl;
cout <<flush;
cin >>e;
}
else{
//初手を取るべきか否か
bool first=true;
if(n%(k+1)==1) first=false;
//毎回自分の出力を割った余りはrになるようにする
int r=n%(k+1);
if(r==0) r=k+1;
--r;
cout << r << endl;
cout <<flush;
while(1){
cin >>e;
if(e>=n) break;
int q=e/(k+1);
int rr=e%(k+1);
int m;
if(rr<r){
m=r-rr;
}
else if(rr>r){
m=r+k+1-rr;
}
cout << m << endl;
cout <<flush;
}
}
return 0;
}