Submission #1248068
Source Code Expand
#include <bits/stdc++.h> using namespace std; /*{{{*/ //template #define REP(i,n) for(int i=0;i<n;i++) #define rep(i,n) for(int i=0;i<n;i++) #define INF 1<<29 #define LINF LLONG_MAX/3 #define MP make_pair #define PB push_back #define pb push_back #define EB emplace_back #define ALL(v) (v).begin(),(v).end() #define all(v) ALL(v) #define sz(x) (int)(x).size() #define debug(x) cerr<<#x<<":"<<x<<endl #define debug2(x,y) cerr<<#x<<","<<#y":"<<x<<","<<y<<endl //struct fin{ fin(){ cin.tie(0); ios::sync_with_stdio(false); } } fin_; struct Double{ double d; explicit Double(double x) : d(x){} }; ostream& operator<<(ostream& os,const Double x){ os << fixed << setprecision(20) << x.d; return os; } template<typename T> ostream& operator<<(ostream& os,const vector<T>& vec){ os << "["; for(const auto& v : vec){ os << v << ","; } os << "]"; return os; } template<typename T,typename U> ostream& operator<<(ostream& os,const pair<T,U>& p){ os << "(" << p.first << ","<< p.second <<")"; return os; } typedef long long ll; typedef unsigned long long ull; typedef pair<int,int> pii; typedef vector<int> vi; typedef vector<vi> vvi; ll gcd(ll a,ll b){ if(b==0) return a; else return gcd(b,a%b); } constexpr double eps = 1e-14; constexpr ll mod = 1e9+7; const int dx[]={1,0,-1,0} ,dy[] = {0,1,0,-1}; /*}}}*/ int N; void solve(){ int ans=-1; vector<vector<int>> tree(N+10,vector<int>(N+10,0)); for(int i=2;i<=N;i++){ cout << "? " << 1 << " " << i << endl; int d; cin>>d; tree[0][i-1] = tree[i-1][0] = d; } vector<pii> a; for(int i=1;i<N;i++){ a.pb(make_pair(tree[0][i],i)); } sort(all(a)); reverse(all(a)); ans = a[0].first; int g = a[0].second; for(int i=0;i<N;i++){ if(i==0 or g==i) continue; cout << "? " << (g+1) << " " << (i+1) << endl; int d; cin >> d; tree[g][i] = tree[i][g] = d; } for(int i=0;i<N;i++){ ans = max(ans,tree[g][i]); } cout << "! " << ans << endl; return; } int main(){ cin >> N; solve(); return 0; }
Submission Info
Submission Time | |
---|---|
Task | D - 高橋くんと木の直径 |
User | chakku000 |
Language | C++14 (GCC 5.4.1) |
Score | 100 |
Code Size | 2150 Byte |
Status | AC |
Exec Time | 6 ms |
Memory | 724 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 | 3 ms | 700 KB |
subtask1_0.txt | AC | 6 ms | 724 KB |
subtask1_1.txt | AC | 6 ms | 720 KB |
subtask1_10.txt | AC | 6 ms | 724 KB |
subtask1_11.txt | AC | 6 ms | 720 KB |
subtask1_12.txt | AC | 6 ms | 724 KB |
subtask1_13.txt | AC | 6 ms | 720 KB |
subtask1_14.txt | AC | 6 ms | 724 KB |
subtask1_15.txt | AC | 6 ms | 716 KB |
subtask1_16.txt | AC | 6 ms | 716 KB |
subtask1_17.txt | AC | 6 ms | 720 KB |
subtask1_18.txt | AC | 6 ms | 720 KB |
subtask1_19.txt | AC | 6 ms | 720 KB |
subtask1_2.txt | AC | 6 ms | 720 KB |
subtask1_20.txt | AC | 3 ms | 716 KB |
subtask1_3.txt | AC | 6 ms | 724 KB |
subtask1_4.txt | AC | 6 ms | 720 KB |
subtask1_5.txt | AC | 6 ms | 720 KB |
subtask1_6.txt | AC | 6 ms | 724 KB |
subtask1_7.txt | AC | 6 ms | 720 KB |
subtask1_8.txt | AC | 6 ms | 724 KB |
subtask1_9.txt | AC | 6 ms | 720 KB |
subtask2_0.txt | AC | 6 ms | 720 KB |
subtask2_1.txt | AC | 6 ms | 720 KB |
subtask2_10.txt | AC | 6 ms | 720 KB |
subtask2_11.txt | AC | 6 ms | 720 KB |
subtask2_12.txt | AC | 6 ms | 716 KB |
subtask2_13.txt | AC | 6 ms | 716 KB |
subtask2_14.txt | AC | 6 ms | 720 KB |
subtask2_15.txt | AC | 6 ms | 724 KB |
subtask2_16.txt | AC | 6 ms | 724 KB |
subtask2_17.txt | AC | 6 ms | 720 KB |
subtask2_18.txt | AC | 6 ms | 716 KB |
subtask2_19.txt | AC | 6 ms | 716 KB |
subtask2_2.txt | AC | 6 ms | 720 KB |
subtask2_3.txt | AC | 6 ms | 720 KB |
subtask2_4.txt | AC | 6 ms | 720 KB |
subtask2_5.txt | AC | 6 ms | 720 KB |
subtask2_6.txt | AC | 6 ms | 720 KB |
subtask2_7.txt | AC | 6 ms | 720 KB |
subtask2_8.txt | AC | 6 ms | 716 KB |
subtask2_9.txt | AC | 6 ms | 720 KB |