Submission #345467
Source Code Expand
// tsukasa_diary's programing contest code template
#include <bits/stdc++.h>
using namespace std;
// define
#define for_(i,a,b) for(int i=(a);i<(b);++i)
#define for_rev(i,a,b) for(int i=(a);i>=(b);--i)
#define allof(a) (a).begin(),(a).end()
#define minit(a,b) memset(a,b,sizeof(a))
#define size_of(a) int((a).size())
// typedef
typedef long long lint;
typedef double Double;
typedef pair< int, int > pii;
template< typename T >
using Matrix = vector< vector< T > >;
// popcount
inline int POPCNT(int x) { return __builtin_popcount(x); }
inline int POPCNT(lint x) { return __builtin_popcount(x); }
// inf
const int iINF = 1L << 30;
const lint lINF = 1LL << 60;
// eps
const Double EPS = 1e-9;
const Double PI = acos(-1);
// inrange
template< typename T >
inline bool in_range(T v, T mi, T mx) { return mi <= v && v < mx; }
template< typename T >
inline bool in_range(T x, T y, T W, T H) { return in_range(x,0,W) && in_range(y,0,H); }
// neighbor clockwise
const int DX[4] = {0,1,0,-1}, DY[4] = {-1,0,1,0};
const int DX_[8] = {0,1,1,1,0,-1,-1,-1}, DY_[8] = {-1,-1,0,1,1,1,0,-1};
// variable update
template< typename T > inline void modAdd(T& a, T b, T mod) { a = (a + b) % mod; }
template< typename T > inline void minUpdate(T& a, T b) { a = min(a, b); }
template< typename T > inline void maxUpdate(T& a, T b) { a = max(a, b); }
// converter
template< typename F, typename T >
inline void convert(F& from, T& to) {
stringstream ss;
ss << from; ss >> to;
}
int main() {
int N;
cin >> N;
int mxd = -1, t = -1;
for_(i,0,N) {
cout << "? " << 1 << " " << i + 1 << endl;
int dst;
cin >> dst;
if (mxd < dst) {
mxd = dst;
t = i + 1;
}
}
mxd = -1;
for_(i,0,N) {
cout << "? " << t << " " << i + 1 << endl;
int dst;
cin >> dst;
maxUpdate(mxd, dst);
}
cout << "! " << mxd << endl;
}
Submission Info
Submission Time |
|
Task |
D - 高橋くんと木の直径 |
User |
tsukasa_diary |
Language |
C++11 (GCC 4.8.1) |
Score |
100 |
Code Size |
1898 Byte |
Status |
AC |
Exec Time |
37 ms |
Memory |
1280 KB |
Judge Result
Set Name |
Sample |
Subtask1 |
All |
Score / Max Score |
0 / 0 |
20 / 20 |
80 / 80 |
Status |
|
|
|
Set Name |
Test Cases |
Sample |
subtask0_0.txt |
Subtask1 |
subtask1_0.txt, subtask1_1.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_2.txt, subtask1_20.txt, subtask1_3.txt, subtask1_4.txt, subtask1_5.txt, subtask1_6.txt, subtask1_7.txt, subtask1_8.txt, subtask1_9.txt, subtask0_0.txt |
All |
subtask0_0.txt, subtask1_0.txt, subtask1_1.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_2.txt, subtask1_20.txt, subtask1_3.txt, subtask1_4.txt, subtask1_5.txt, subtask1_6.txt, subtask1_7.txt, subtask1_8.txt, subtask1_9.txt, subtask2_0.txt, subtask2_1.txt, subtask2_10.txt, subtask2_11.txt, subtask2_12.txt, subtask2_13.txt, subtask2_14.txt, subtask2_15.txt, subtask2_16.txt, subtask2_17.txt, subtask2_18.txt, subtask2_19.txt, subtask2_2.txt, subtask2_3.txt, subtask2_4.txt, subtask2_5.txt, subtask2_6.txt, subtask2_7.txt, subtask2_8.txt, subtask2_9.txt |
Case Name |
Status |
Exec Time |
Memory |
subtask0_0.txt |
AC |
31 ms |
1148 KB |
subtask1_0.txt |
AC |
33 ms |
1208 KB |
subtask1_1.txt |
AC |
33 ms |
1272 KB |
subtask1_10.txt |
AC |
35 ms |
1224 KB |
subtask1_11.txt |
AC |
32 ms |
1264 KB |
subtask1_12.txt |
AC |
34 ms |
1220 KB |
subtask1_13.txt |
AC |
37 ms |
1240 KB |
subtask1_14.txt |
AC |
37 ms |
1216 KB |
subtask1_15.txt |
AC |
33 ms |
1176 KB |
subtask1_16.txt |
AC |
32 ms |
1132 KB |
subtask1_17.txt |
AC |
34 ms |
1128 KB |
subtask1_18.txt |
AC |
34 ms |
1220 KB |
subtask1_19.txt |
AC |
34 ms |
1232 KB |
subtask1_2.txt |
AC |
36 ms |
1280 KB |
subtask1_20.txt |
AC |
28 ms |
1072 KB |
subtask1_3.txt |
AC |
36 ms |
1276 KB |
subtask1_4.txt |
AC |
36 ms |
1220 KB |
subtask1_5.txt |
AC |
32 ms |
1224 KB |
subtask1_6.txt |
AC |
34 ms |
1272 KB |
subtask1_7.txt |
AC |
34 ms |
1208 KB |
subtask1_8.txt |
AC |
34 ms |
1228 KB |
subtask1_9.txt |
AC |
31 ms |
1212 KB |
subtask2_0.txt |
AC |
34 ms |
1208 KB |
subtask2_1.txt |
AC |
35 ms |
1132 KB |
subtask2_10.txt |
AC |
32 ms |
1220 KB |
subtask2_11.txt |
AC |
35 ms |
1212 KB |
subtask2_12.txt |
AC |
32 ms |
1136 KB |
subtask2_13.txt |
AC |
33 ms |
1264 KB |
subtask2_14.txt |
AC |
34 ms |
1132 KB |
subtask2_15.txt |
AC |
32 ms |
1216 KB |
subtask2_16.txt |
AC |
35 ms |
1212 KB |
subtask2_17.txt |
AC |
31 ms |
1128 KB |
subtask2_18.txt |
AC |
31 ms |
1220 KB |
subtask2_19.txt |
AC |
35 ms |
1200 KB |
subtask2_2.txt |
AC |
33 ms |
1208 KB |
subtask2_3.txt |
AC |
34 ms |
1188 KB |
subtask2_4.txt |
AC |
34 ms |
1264 KB |
subtask2_5.txt |
AC |
34 ms |
1208 KB |
subtask2_6.txt |
AC |
35 ms |
1200 KB |
subtask2_7.txt |
AC |
34 ms |
1216 KB |
subtask2_8.txt |
AC |
35 ms |
1220 KB |
subtask2_9.txt |
AC |
36 ms |
1172 KB |