Submission #1068812

# Submission time Handle Problem Language Result Execution time Memory
1068812 2024-08-21T12:19:27 Z Benmath COVID tests (CEOI24_covid) C++14
12.44 / 100
6662 ms 348 KB
#include<bits/stdc++.h>
using namespace std;
int main(){
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    cout.tie(NULL);
    int n;
    cin >> n;
    double p;
    cin >> p;
    int t;
    cin >> t;
    char x;
if(t == 1){
    while(t--){
        int pos[n];
        for(int i = 0; i < n; i++){
            cout << "Q" << " ";
            for(int j = 0; j < n; j++){
                if(j != i){
                    cout << "0";
                }else{
                    cout <<"1";
                }
            }
            cout << endl<<flush;
            cin >> x;
            if(x == 'P'){
                pos[i] = 1;
            }else{
                pos[i] = 0;
            }
    }
    cout << "A" <<" ";
    for(int i = 0; i < n; i++){
        cout<<pos[i];
    }
    cout << endl<<flush;
    cin >> x;

    }
}else{  
   
        double p1 = 0.002;
    if (p < p1){
    while(t--){
        int ans[n];
        for(int i = 0; i < n; i++){
            ans[i] = 0;
        }
        int t1 = 0;
        while(t1 == 0){

            cout << "Q" <<" ";
            for(int i = 0; i < n; i++){
                if(ans[i] == 1){
                    cout << "0";
                }else{
                cout << "1";}
            }
            cout << endl << flush;
            cin >> x;
            if(x == 'N'){
                t1++;
                break;
            }else{
            int l = 0;
            int r = n - 1;
                while(l < r){
                    int mid = (l + r)/2;
                    cout << "Q" << " ";
                    for(int i = 0; i < l; i++){
                        cout << "0";
                    }
                    for(int i = l; i <= mid; i++){
                        if(ans[i] == 1){
                            cout <<"0";
                        }else{
                        cout <<"1";}
                    }
                    for(int i = mid + 1; i < n; i++){
                        cout <<"0";
                    }
                    cout << endl << flush;
                    cin >> x;

                    if(x == 'P'){
                        r = mid;
                    }else{
                    l = mid + 1;}
                }
                ans[l] = 1;
            }
        }
        cout << "A" <<" ";
        for(int i = 0; i < n; i++){
            cout << ans[i];
        }
        cout << endl << flush;
        cin >> x;
    }
    }else{
        while(t--){
              int ans[n];
        for(int i = 0; i < n; i++){
            ans[i] = 0;
        }
        for(int i = 0; i < n; i = i + 2){
            cout << "Q" << " ";
            for(int j = 0; j < n; j++){
                if(j == i or j == (i + 1)){
                    cout << "1";
                }else{
                    cout << "0";
                }
            }
            cout << endl << flush;
            cin >> x;
            if(x == 'P'){
                cout << "Q" << " ";
            for(int j = 0; j < n; j++){
                if(j == i){
                    cout << "1";
                }else{
                    cout << "0";
                }
            }
            cout << endl << flush;
            cin >> x;
            if(x == 'P'){
                ans[i] = 1;
            }
              cout << "Q" << " ";
            for(int j = 0; j < n; j++){
                if(j == (i +1)){
                    cout << "1";
                }else{
                    cout << "0";
                }
            }
            cout << endl << flush;
            cin >> x;
            if(x == 'P'){
                ans[i + 1] = 1;
            }
            }
        }
        cout << "A" << " ";
        for(int i = 0; i < n; i++){
            cout << ans[i];
        }
        cout << endl << flush;
        cin >> x;
        }
    }
}
}
# Verdict Execution time Memory Grader output
1 Correct 0 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 26 ms 344 KB Output is correct
2 Correct 21 ms 344 KB Output is correct
3 Correct 26 ms 344 KB Output is correct
4 Correct 28 ms 344 KB Output is correct
5 Correct 30 ms 340 KB Output is correct
6 Correct 31 ms 344 KB Output is correct
7 Correct 24 ms 344 KB Output is correct
8 Correct 26 ms 344 KB Output is correct
9 Correct 24 ms 344 KB Output is correct
10 Correct 25 ms 344 KB Output is correct
11 Correct 21 ms 344 KB Output is correct
12 Correct 30 ms 340 KB Output is correct
13 Correct 33 ms 344 KB Output is correct
14 Correct 26 ms 344 KB Output is correct
15 Correct 24 ms 344 KB Output is correct
16 Correct 36 ms 344 KB Output is correct
17 Correct 23 ms 344 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 87 ms 344 KB Output is correct (P=0.001, F=15.1, Q=11.0) -> 90.00 points
2 Correct 4463 ms 344 KB Output is correct (P=0.005256, F=51.1, Q=510.1) -> 2.44 points
3 Correct 4584 ms 344 KB Output is correct (P=0.011546, F=94.9, Q=522.7) -> 4.73 points
4 Correct 4817 ms 344 KB Output is correct (P=0.028545, F=191.5, Q=556.1) -> 10.45 points
5 Correct 5037 ms 344 KB Output is correct (P=0.039856, F=246.3, Q=578.4) -> 14.08 points
6 Correct 5096 ms 344 KB Output is correct (P=0.068648, F=366.2, Q=633.2) -> 22.98 points
7 Correct 5083 ms 344 KB Output is correct (P=0.104571, F=490.3, Q=698.9) -> 33.31 points
8 Correct 5601 ms 344 KB Output is correct (P=0.158765, F=639.1, Q=790.5) -> 46.21 points
9 Correct 6662 ms 344 KB Output is correct (P=0.2, F=731.4, Q=861.0) -> 52.67 points