Submission #332037


Source Code Expand

#include<iostream>
#include<string>
using namespace std;
#define rep2(x,from,to) for(int x=(from);(x)<(to);(x)++)
#define rep(x,to) rep2(x,0,to)
#define INF 100000
int r,c,k;
string zu[501];
int t1[501][501];
int t2[501][501];
int t3[501][501];
int t4[501][501];
int dp[501][501];
int ans;
int main()
{
	cin>>r>>c>>k;
	rep(i,r)cin>>zu[i];
	rep(i,501)rep(j,501)
	{
		t1[i][j]=INF;
		t2[i][j]=INF;
		t3[i][j]=INF;
		t4[i][j]=INF;
	}
	rep(i,r)rep(j,c)
	{
		if(zu[i][j]=='x')
		{
			t1[i][j]=0;
			continue;
		}
		if(i==0&&j!=0)
		{
			t1[i][j]=t1[i][j-1]+1;
		}
		if(i!=0&&j==0)
		{
			t1[i][j]=t1[i-1][j]+1;
		}
		if(i!=0&&j!=0)
		{
			t1[i][j]=min(t1[i-1][j]+1,t1[i][j-1]+1);
		}
	}
	rep(i,r)rep(j,c)
	{
		if(zu[r-1-i][j]=='x')
		{
			t2[r-1-i][j]=0;
			continue;
		}
		if(i==0&&j!=0)
		{
			t2[r-1-i][j]=t2[r-1-i][j-1]+1;
		}
		if(i!=0&&j==0)
		{
			t2[r-1-i][j]=t2[r-i][j]+1;
		}
		if(i!=0&&j!=0)
		{
			t2[r-1-i][j]=min(t2[r-i][j]+1,t2[r-1-i][j-1]+1);
		}
	}
	rep(i,r)rep(j,c)
	{
		if(zu[i][c-1-j]=='x')
		{
			t3[i][c-1-j]=0;
			continue;
		}
		if(i==0&&j!=0)
		{
			t3[i][c-1-j]=t3[i][c-j]+1;
		}
		if(i!=0&&j==0)
		{
			t3[i][c-1-j]=t3[i-1][c-1-j]+1;
		}
		if(i!=0&&j!=0)
		{
			t3[i][c-1-j]=min(t3[i][c-j]+1,t3[i-1][c-1-j]+1);
		}
	}
	rep(i,r)rep(j,c)
	{
		if(zu[r-1-i][c-1-j]=='x')
		{
			t4[r-1-i][c-1-j]=0;
			continue;
		}
		if(i==0&&j!=0)
		{
			t4[r-1-i][c-1-j]=t4[r-1-i][c-j]+1;
		}
		if(i!=0&&j==0)
		{
			t4[r-1-i][c-1-j]=t4[r-i][c-1-j]+1;
		}
		if(i!=0&&j!=0)
		{
			t4[r-1-i][c-1-j]=min(t4[r-1-i][c-j]+1,t4[r-i][c-1-j]+1);
		}
	}
	int ss;
	k--;
	rep(i,r)
	{
		rep(j,c)
		{
			ss=INF;
			ss=min(ss,t1[i][j]);
			ss=min(ss,t2[i][j]);
			ss=min(ss,t3[i][j]);
			ss=min(ss,t4[i][j]);
			dp[i][j]=ss;
			if(i-k>=0&&j-k>=0&&i+k<r&&j+k<c&&dp[i][j]>k)ans++;
		}
	}
	cout<<ans<<endl;
	return 0;
}

Submission Info

Submission Time
Task C - 菱型カウント
User tainohimono
Language C++ (G++ 4.6.4)
Score 100
Code Size 1926 Byte
Status AC
Exec Time 67 ms
Memory 6128 KiB

Judge Result

Set Name Sample Subtask1 Subtask2
Score / Max Score 0 / 0 30 / 30 70 / 70
Status
AC × 3
AC × 23
AC × 43
Set Name Test Cases
Sample subtask0-sample01.txt, subtask0-sample02.txt, subtask0-sample03.txt
Subtask1 subtask0-sample01.txt, subtask0-sample02.txt, subtask0-sample03.txt, subtask1-01.txt, subtask1-02.txt, subtask1-03.txt, subtask1-04.txt, subtask1-05.txt, subtask1-06.txt, subtask1-07.txt, subtask1-08.txt, subtask1-09.txt, subtask1-10.txt, subtask1-11.txt, subtask1-12.txt, subtask1-13.txt, subtask1-14.txt, subtask1-15.txt, subtask1-16.txt, subtask1-17.txt, subtask1-18.txt, subtask1-19.txt, subtask1-20.txt
Subtask2 subtask0-sample01.txt, subtask0-sample02.txt, subtask0-sample03.txt, subtask1-01.txt, subtask1-02.txt, subtask1-03.txt, subtask1-04.txt, subtask1-05.txt, subtask1-06.txt, subtask1-07.txt, subtask1-08.txt, subtask1-09.txt, subtask1-10.txt, subtask1-11.txt, subtask1-12.txt, subtask1-13.txt, subtask1-14.txt, subtask1-15.txt, subtask1-16.txt, subtask1-17.txt, subtask1-18.txt, subtask1-19.txt, subtask1-20.txt, subtask2-01.txt, subtask2-02.txt, subtask2-03.txt, subtask2-04.txt, subtask2-05.txt, subtask2-06.txt, subtask2-07.txt, subtask2-08.txt, subtask2-09.txt, subtask2-10.txt, subtask2-11.txt, subtask2-12.txt, subtask2-13.txt, subtask2-14.txt, subtask2-15.txt, subtask2-16.txt, subtask2-17.txt, subtask2-18.txt, subtask2-19.txt, subtask2-20.txt
Case Name Status Exec Time Memory
subtask0-sample01.txt AC 37 ms 4840 KiB
subtask0-sample02.txt AC 51 ms 4788 KiB
subtask0-sample03.txt AC 36 ms 4840 KiB
subtask1-01.txt AC 37 ms 4788 KiB
subtask1-02.txt AC 37 ms 4840 KiB
subtask1-03.txt AC 37 ms 4916 KiB
subtask1-04.txt AC 35 ms 4912 KiB
subtask1-05.txt AC 37 ms 4912 KiB
subtask1-06.txt AC 33 ms 4920 KiB
subtask1-07.txt AC 36 ms 4916 KiB
subtask1-08.txt AC 34 ms 4924 KiB
subtask1-09.txt AC 37 ms 4972 KiB
subtask1-10.txt AC 38 ms 4960 KiB
subtask1-11.txt AC 35 ms 4912 KiB
subtask1-12.txt AC 37 ms 4968 KiB
subtask1-13.txt AC 37 ms 4952 KiB
subtask1-14.txt AC 36 ms 4912 KiB
subtask1-15.txt AC 36 ms 4968 KiB
subtask1-16.txt AC 39 ms 5036 KiB
subtask1-17.txt AC 38 ms 4916 KiB
subtask1-18.txt AC 37 ms 4916 KiB
subtask1-19.txt AC 37 ms 4964 KiB
subtask1-20.txt AC 36 ms 4968 KiB
subtask2-01.txt AC 45 ms 5428 KiB
subtask2-02.txt AC 46 ms 5548 KiB
subtask2-03.txt AC 38 ms 5456 KiB
subtask2-04.txt AC 49 ms 5560 KiB
subtask2-05.txt AC 63 ms 6068 KiB
subtask2-06.txt AC 62 ms 6068 KiB
subtask2-07.txt AC 64 ms 6072 KiB
subtask2-08.txt AC 62 ms 6072 KiB
subtask2-09.txt AC 62 ms 6064 KiB
subtask2-10.txt AC 64 ms 6104 KiB
subtask2-11.txt AC 62 ms 6072 KiB
subtask2-12.txt AC 65 ms 6068 KiB
subtask2-13.txt AC 64 ms 6128 KiB
subtask2-14.txt AC 67 ms 6120 KiB
subtask2-15.txt AC 64 ms 6060 KiB
subtask2-16.txt AC 64 ms 6056 KiB
subtask2-17.txt AC 64 ms 6108 KiB
subtask2-18.txt AC 64 ms 6112 KiB
subtask2-19.txt AC 63 ms 6064 KiB
subtask2-20.txt AC 64 ms 6048 KiB