Submission #1186144

#TimeUsernameProblemLanguageResultExecution timeMemory
1186144UnforgettableplChess Rush (CEOI20_chessrush)C++20
0 / 100
0 ms328 KiB
#include "arithmetics.h"
#include <bits/stdc++.h>
using namespace std;

#define int long long

const int modulo = 1e9+7;


int32_t main(){
    ios_base::sync_with_stdio(false);
    cin.tie(nullptr);
    int R,C,Q;
    cin >> R >> C >> Q;
    for(int i=1;i<=Q;i++){
        char t;cin>>t;
        int st,ta;cin>>st>>ta;
        if(ta<st)swap(ta,st);
        switch(t){
            case 'P':
                if(st==ta)cout<<"1 1\n";
                else cout<<"0 0\n";
                break;
            case 'R':
                if(st==ta)cout<<"1 1\n";
                else cout<<"2 2\n";
                break;
            case 'Q':
                if(st==ta)cout<<"1 1\n";
                else if(ta-st==R-1)cout<<"1 1\n";
                else {
                    int ans = 4;
                    if(((1+st)&1)==((R+ta)&1) and st+((R+ta-1-st)/2)<=C)ans++;
                    if(((1+st)&1)==((R+ta)&1) and ta-((R+ta-1-st)/2)>0)ans++;
                    cout << "2 " << ans << '\n';
                }
                break;
            case 'B':
                break;
            case 'K':
                break;
        }
    }
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...