結果

問題 No.2978 Lexicographically Smallest and Largest Subarray
ユーザー daiotadaiota
提出日時 2024-12-02 08:25:15
言語 C++14
(gcc 13.3.0 + boost 1.87.0)
結果
WA  
実行時間 -
コード長 1,219 bytes
コンパイル時間 1,829 ms
コンパイル使用メモリ 172,064 KB
実行使用メモリ 25,464 KB
平均クエリ数 1499.00
最終ジャッジ日時 2024-12-02 08:25:32
合計ジャッジ時間 16,909 ms
ジャッジサーバーID
(参考情報)
judge2 / judge4
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 WA -
testcase_01 WA -
testcase_02 AC 181 ms
24,556 KB
testcase_03 WA -
testcase_04 AC 176 ms
24,556 KB
testcase_05 AC 176 ms
25,196 KB
testcase_06 AC 209 ms
24,812 KB
testcase_07 WA -
testcase_08 WA -
testcase_09 WA -
testcase_10 WA -
testcase_11 WA -
testcase_12 AC 177 ms
24,824 KB
testcase_13 WA -
testcase_14 WA -
testcase_15 AC 174 ms
25,208 KB
testcase_16 WA -
testcase_17 WA -
testcase_18 WA -
testcase_19 WA -
testcase_20 WA -
testcase_21 WA -
testcase_22 WA -
testcase_23 WA -
testcase_24 AC 172 ms
25,464 KB
testcase_25 WA -
testcase_26 AC 176 ms
24,824 KB
testcase_27 AC 178 ms
24,824 KB
testcase_28 WA -
testcase_29 WA -
testcase_30 WA -
testcase_31 AC 201 ms
24,824 KB
testcase_32 WA -
testcase_33 AC 181 ms
24,824 KB
testcase_34 AC 178 ms
24,568 KB
testcase_35 WA -
testcase_36 AC 175 ms
24,892 KB
testcase_37 WA -
testcase_38 WA -
testcase_39 WA -
testcase_40 WA -
testcase_41 WA -
testcase_42 WA -
testcase_43 WA -
testcase_44 AC 176 ms
24,824 KB
testcase_45 WA -
testcase_46 WA -
testcase_47 WA -
testcase_48 WA -
testcase_49 WA -
testcase_50 AC 171 ms
25,220 KB
testcase_51 AC 172 ms
25,220 KB
testcase_52 WA -
testcase_53 WA -
testcase_54 AC 175 ms
24,836 KB
testcase_55 WA -
testcase_56 WA -
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <bits/stdc++.h>

using namespace std;

typedef long long ll;
typedef pair<int,int> P;
#define REP(i,n) for(int i=0;i<int(n);i++)






int main(){
	cin.tie(nullptr);  ios_base::sync_with_stdio(false);
    int i,j;


    int N,Q;
    cin >> N >> Q;

    vector<int> v,u;
    int X;
    for(i=1;i<N;i+=2){

    	cout << "?" << ' ' << i << ' ' << i << ' ' << i+1 << ' ' << i+1 << endl;
    	cout.flush();

    	cin >> X;

    	if(X==1){
    		v.push_back(i+1);
    		u.push_back(i);
    	}
    	else if(X==0){
       		v.push_back(i);
        	u.push_back(i+1);
    	}
    	else{
    		return 0;
    	}

    }


    int n=v.size();
    int mx=v[0];
    for(i=1;i<n;i++){

    	cout << "?" << ' ' << mx << ' ' << N << ' ' << i << ' ' << N << endl;
    	cout.flush();

    	cin >> X;

       	if(X==1) mx=i;
        else if(X==0) continue;
        else return 0;
    }

    int mn=u[0];
    for(i=1;i<n;i++){

    	cout << "?" << ' ' << mn << ' ' << mn << ' ' << i << ' ' << i << endl;
    	cout.flush();

    	cin >> X;

       	if(X==1) continue;
        else if(X==0) mn=i;
        else return 0;
    }


	cout << "!" << ' ' << mn << ' ' << mn << ' ' << mx << ' ' << N << endl;
	cout.flush();





	return 0;

}
0