Submission #599915

#TimeUsernameProblemLanguageResultExecution timeMemory
599915Jakub_WozniakDango Maker (JOI18_dango_maker)C++14
13 / 100
1 ms304 KiB
#include <bits/stdc++.h>
using namespace std;

int main()
{
	long int wynik1=0, wynik2=0;
	int M,N;
	cin >> N >> M;
	string kol[N];
	bool uzy[N][M];
	
	for(int i=0;i<N;i++)
	{
		cin >> kol[i];
		for(int j=0;j<M;j++)
		{
			uzy[i][j]=0;
		}
	}
	
	// najpierw probujemy wszystkie poziomo , a pozniej pionowo
	for(int i=0;i<N;i++)
	{
		for(int j=0;j<M-2;j++)
		{
			if(kol[i][j]=='R' && kol[i][j+1]=='G' && kol[i][j+2]=='W')
			{
				wynik1++;
				uzy[i][j]=1;
				uzy[i][j+1]=1;
				uzy[i][j+2]=1;
			}
		}
	}
	
	for(int i=0;i<N-2;i++)
	{
		for(int j=0;j<M;j++)
		{
			if(kol[i][j]=='R' && kol[i+1][j]=='G' && kol[i+2][j]=='W')
			{
				if(uzy[i][j]==0 && uzy[i+1][j]==0 && uzy[i+2][j]==0){wynik1++;}
			}
		}
	}
	
	//czyszzcenie
	for(int i=0;i<N;i++)
	{
		for(int j=0;j<M;j++)
		{
			uzy[i][j]=0;
		}
	}
	
	
	// najpierw pionowo pozniej poziomo
	
	for(int i=0;i<N-2;i++)
	{
		for(int j=0;j<M;j++)
		{
			if(kol[i][j]=='R' && kol[i+1][j]=='G' && kol[i+2][j]=='W')
			{
				wynik2++;
				uzy[i][j]=1;
				uzy[i+1][j]=1;
				uzy[i+2][j]=1;
			}
		}
	}
	
	for(int i=0;i<N;i++)
	{
		for(int j=0;j<M-2;j++)
		{
			if(kol[i][j]=='R' && kol[i][j+1]=='G' && kol[i][j+2]=='W')
			{
				if(uzy[i][j]==0 && uzy[i][j+1]==0 && uzy[i][j+2]==0){wynik2++;}
			}
		}
	}
	
	
	cout << max(wynik1 , wynik2);
	return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...