結果
| 問題 |
No.514 宝探し3
|
| コンテスト | |
| ユーザー |
srup٩(๑`н´๑)۶
|
| 提出日時 | 2017-05-05 23:13:57 |
| 言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,605 bytes |
| コンパイル時間 | 1,708 ms |
| コンパイル使用メモリ | 159,256 KB |
| 実行使用メモリ | 25,604 KB |
| 平均クエリ数 | 102.25 |
| 最終ジャッジ日時 | 2024-07-16 13:23:37 |
| 合計ジャッジ時間 | 4,797 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | WA * 12 |
コンパイルメッセージ
main.cpp: In function ‘int main()’:
main.cpp:53:33: warning: ‘retX’ may be used uninitialized in this function [-Wmaybe-uninitialized]
53 | cout << retX << " " << m1 << endl;
| ^~~
ソースコード
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef vector<int> vint;
typedef pair<int,int> pint;
typedef vector<pint> vpint;
#define rep(i,n) for(int i=0;i<(n);i++)
#define REP(i,n) for(int i=n-1;i>=(0);i--)
#define reps(i,f,n) for(int i=(f);i<(n);i++)
#define each(it,v) for(__typeof((v).begin()) it=(v).begin();it!=(v).end();it++)
#define all(v) (v).begin(),(v).end()
#define eall(v) unique(all(v), v.end())
#define pb push_back
#define mp make_pair
#define fi first
#define se second
#define chmax(a, b) a = (((a)<(b)) ? (b) : (a))
#define chmin(a, b) a = (((a)>(b)) ? (b) : (a))
const int MOD = 1e9 + 7;
const int INF = 1e9;
const ll INFF = 1e18;
const int MAX = 1000000000;
int main(void){
int lx = 0, rx = MAX + 1;
while(rx - lx > 3){
int m1 = (2 * lx + rx) / 3; //l
int m2 = (lx + 2 * rx) / 3; // r
cout << m1 << " " << 0 << endl;
int ret1; cin >> ret1;
if(ret1 == 0) return 0;
cout << m2 << " " << 0 << endl;
int ret2; cin >> ret2;
if(ret2 == 0) return 0;
if(ret1 < ret2) rx = m2;
else lx = m1;
}
int retX, distX = INF;
for (int i = max(0, lx); i <= min(rx, MAX); ++i){
cout << i << " " << 0 << endl;
int ret; cin >> ret;
if(ret == 0)return 0;
if(ret < distX) retX = i, distX = ret;
}
int ly = 0, ry = MAX + 1;
rep(i, 100){
int m1 = (2 * ly + ry) / 3; //l
int m2 = (ly + 2 * ry) / 3; // r
cout << retX << " " << m1 << endl;
int ret1; cin >> ret1;
if(ret1 == 0) return 0;
cout << retX << " " << m2 << endl;
int ret2; cin >> ret2;
if(ret2 == 0) return 0;
if(ret1 <= ret2) ry = m2;
else ly = m1;
}
return 0;
}
srup٩(๑`н´๑)۶