제출 #1346277

#제출 시각아이디문제언어결과실행 시간메모리
1346277osman_avci42Rima (COCI25_rima)C++20
15 / 50
12 ms31728 KiB
#include <bits/stdc++.h>
#define pb push_back
#define mp make_pair
#define se second
#define fi first
#define pq priority_queue
#define endl "\n"
#define int long long
using namespace std;
string a[100005][10],s;
int t12,t14,t13,t34,t24,t23,n,m,x,k,y,z;
int32_t main(){
	cin>>n>>m>>k;
	for(int i=1;i<=n/4;i++){
		cin>>s;
		a[i][1]=s;
		for(int j=1;j<=m-1;j++){
			cin>>s;
			a[i][1]+=" ";
			a[i][1]+=s;
		}
		cin>>s;
		a[i][2]=s;
		for(int j=1;j<=m-1;j++){
			cin>>s;
			a[i][2]+=" ";
			a[i][2]+=s;
		}
		cin>>s;
		a[i][3]=s;
		for(int j=1;j<=m-1;j++){
			cin>>s;
			a[i][3]+=" ";
			a[i][3]+=s;
		}
		cin>>s;
		a[i][4]=s;
		for(int j=1;j<=m-1;j++){
			cin>>s;
			a[i][4]+=" ";
			a[i][4]+=s;
		}
		t12=0;
		t14=0;
		t13=0;
		t34=0;
		t24=0;
		t23=0;
		int sayac=0,sira12=(int)a[i][2].size()-1,sira13=(int)a[i][3].size()-1,sira14=(int)a[i][4].size()-1;
		for(int j=(int)a[i][1].size()-1;j>=1;j--){
			if(sayac>=k || a[i][1][j]==' ' || a[i][2][sira12]==' ' || a[i][3][sira13]==' ' || a[i][4][sira14]==' ') break;
			if(a[i][1][j]==a[i][2][sira12]) t12++;
			if(a[i][1][j]==a[i][3][sira13]) t13++;
			if(a[i][1][j]==a[i][4][sira14]) t14++;
			sira12--;
			sira13--;
			sira14--;
			sayac++;
		}
		if(t12==k && t13==k && t14==k){
			x++;
			y++;
			z++;
			
		}
		else{
			if(t12==k){
				int sira34=(int)a[i][4].size()-1;
				sayac=0;
				for(int j=(int)a[i][3].size()-1;j>=1;j--){
					if(sayac>=k || a[i][3][j]==' ' || a[i][4][sira34]==' ') break;
					if(a[i][3][j]==a[i][4][sira34]) t34++;
					sira34--;
					sayac++;
				}
				if(t34==k){
					x++;
				}
			}
			if(t13==k){
				int sira24=(int)a[i][4].size()-1;
				sayac=0;
				for(int j=(int)a[i][2].size()-1;j>=1;j--){
					if(sayac>=k || a[i][2][j]==' ' || a[i][3][sira24]==' ') break;
					if(a[i][2][j]==a[i][4][sira24]) t24++;
					sira24--;
					sayac++;
				}
				if(t24==k){
					y++;
				}
			}
			if(t14==k){
				int sira23=(int)a[i][3].size()-1;
				sayac=0;
				for(int j=(int)a[i][2].size()-1;j>=1;j--){
					if(sayac>=k || a[i][2][j]==' ' || a[i][3][sira23]==' ') break;
					if(a[i][2][j]==a[i][3][sira23]) t23++;
					sira23--;
					sayac++;
				}
				if(t23==k){
					z++;
				}
			}
		}	
	}
	cout<<x<<" "<<y<<" "<<z;
	return 0;
}
//TASACAK BU DENIZ


#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...