제출 #1299077

#제출 시각아이디문제언어결과실행 시간메모리
1299077PieArmyChess Rush (CEOI20_chessrush)C++20
8 / 100
1 ms576 KiB
#include<bits/stdc++.h>
typedef long long ll;
#define pb push_back
#define fr first
#define sc second
#define endl '\n'
using namespace std;
#define mid ((left+right)>>1)

int n,m,q;

int main(){
	ios_base::sync_with_stdio(23^23);cin.tie(NULL);
	cin>>n>>m>>q;
	while(q--){
		char c;cin>>c;
		int a,b;cin>>a>>b;
		if(c=='P'){
			if(a==b){
				cout<<n-1<<" 1\n";
			}
			else cout<<"0 0\n";
			continue;
		}
		if(c=='R'){
			if(a==b){
				cout<<"1 1\n";
			}
			else cout<<"2 2\n";
			continue;
		}
		if(c=='Q'){
			if(a==b){
				cout<<"1 1\n";
			}
			else if(min(a,b)==1&&max(a,b)==m&&n==m){
				cout<<"1 1\n";
			}
			else{
				cout<<"2 ";
				int cev=4;
				if(((n+b)&1)==((1+a)&1)){
					int x=a+1,y=1+1;
					while(x<=m){
						if(x+y==n+b){
							cev++;
							break;
						}
						x++;
						y++;
					}
					x=a-1;y=1+1;
					while(x>0){
						if(y-x==n-b){
							cev++;
							break;
						}
						x--;
						y++;
					}
				}
				if(n==m&&(a==1||a==m||b==1||b==m)){
					cev++;
				}
				cout<<cev<<endl;
			}
			continue;
		}
		if(c=='B'){

		}
		if(c=='K'){

		}
	}
}
#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...