99402024-03-20 19:28:25csdavidChess Rushcpp17Hibás válasz 0/1004ms4616 KiB
#include <iostream>

using namespace std;

int kezdoszlop, celoszlop;
int r, c, q;
char type;

void pawn(){
    if(kezdoszlop!=celoszlop){
        cout << 0 << ' ' << 0;
    }
    else{
        cout << r-1 << ' ' << 1;
    }
}

void rook(){
    if(kezdoszlop==celoszlop){
        cout << 1 << ' ' << 1;
    }
    else{
        cout << 2 << ' ' << 2;
    }
}

void queen(){
    if(kezdoszlop==celoszlop||abs(celoszlop-kezdoszlop)==r-1){
        cout << 1 << ' ' << 1;
    }
    else{
        int ertek=4, kulonbseg;
        if(r==c){
            if(kezdoszlop==1){
                ertek++;
            }
            if(celoszlop==1 || celoszlop==c){
                ertek++;
            }
        }
        if((abs(kezdoszlop-celoszlop)%2+r%2)%2){
            kulonbseg=(r-abs(kezdoszlop-celoszlop)-1)/2;
            if(min(celoszlop, kezdoszlop)-kulonbseg>=1){
                ertek++;
            }
            if(max(celoszlop, kezdoszlop)+kulonbseg<=c){
                ertek++;
            }
        }

        //cout << min(celoszlop, kezdoszlop)-kulonbseg << ' ' << max(celoszlop, kezdoszlop)+kulonbseg << '\n';
        cout << 2 << ' ' << ertek;
    }
}
using namespace std;

int main()
{

    cin >> r >> c >> q;
    while(q--){
        cin >> type >> kezdoszlop >> celoszlop;
        if(type=='P'){
            pawn();
        }
        else if(type=='R'){
            rook();
        }
        else if(type=='Q'){
            queen();
        }
        cout << '\n';
    }
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Hibás válasz3ms1876 KiB
2Hibás válasz4ms2068 KiB
subtask20/8
3Hibás válasz3ms2156 KiB
4Elfogadva4ms2284 KiB
5Elfogadva3ms2488 KiB
6Hibás válasz4ms2708 KiB
subtask30/15
7Hibás válasz3ms2916 KiB
8Hibás válasz3ms2996 KiB
9Hibás válasz3ms3148 KiB
10Hibás válasz3ms3016 KiB
subtask40/22
11Hibás válasz4ms3012 KiB
12Hibás válasz4ms3020 KiB
13Hibás válasz4ms3028 KiB
14Hibás válasz4ms3028 KiB
15Hibás válasz4ms3024 KiB
16Hibás válasz4ms3180 KiB
subtask50/5
17Hibás válasz3ms3156 KiB
18Hibás válasz3ms3220 KiB
19Hibás válasz3ms3248 KiB
20Hibás válasz3ms3364 KiB
subtask60/8
21Hibás válasz4ms3436 KiB
22Hibás válasz4ms3436 KiB
23Hibás válasz4ms3572 KiB
24Hibás válasz4ms3648 KiB
subtask70/15
25Hibás válasz4ms3776 KiB
26Hibás válasz4ms3864 KiB
27Hibás válasz4ms3860 KiB
28Hibás válasz4ms3864 KiB
29Hibás válasz4ms3992 KiB
30Hibás válasz3ms4236 KiB
subtask80/20
31Hibás válasz4ms4292 KiB
32Hibás válasz4ms4288 KiB
33Hibás válasz4ms4288 KiB
34Hibás válasz4ms4284 KiB
35Hibás válasz4ms4288 KiB
36Hibás válasz4ms4408 KiB
subtask90/7
37Hibás válasz4ms4528 KiB
38Hibás válasz4ms4616 KiB
39Hibás válasz4ms4504 KiB
40Hibás válasz4ms4500 KiB
41Hibás válasz4ms4524 KiB
42Hibás válasz4ms4596 KiB