結果
問題 | No.2978 Lexicographically Smallest and Largest Subarray |
ユーザー |
|
提出日時 | 2024-12-02 21:24:40 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
RE
|
実行時間 | - |
コード長 | 473 bytes |
コンパイル時間 | 1,930 ms |
コンパイル使用メモリ | 192,916 KB |
最終ジャッジ日時 | 2025-02-26 10:40:58 |
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | RE * 57 |
ソースコード
#include <bits/stdc++.h> using namespace std; int n,q; int ask(int i,int j) { printf("? %d %d %d %d\n", i+1,n,j+1,n); int a; cin>>a; assert(a>=0); return a; } pair<int,int> f(int l,int r) { if(r-l==1) return {l,l}; int m=(l+r)/2; auto [min1,max1]=f(l,m); auto [min2,max2]=f(m,r); int mn=ask(min1,min2)?min2:min1; int mx=ask(max1,max2)?max1:max2; return {mn,mx}; } int main() { cin>>n>>q; auto [mn,mx]=f(0,n); printf("! %d %d %d %d\n",mn+1,mn+1,mx+1,n); }