Submission #3389680


Source Code Expand

using System;
using System.Linq;//リストの使用
using System.Collections.Generic;
class Program
{
	static void Main()
	{
		string[] input = Console.ReadLine().Split(' ');//Splitで区切り文字を指定して複数個受け取る。
		long n = long.Parse(input[0]);
		long k = long.Parse(input[1]);
    long[,] vertexes = new long[n,2];
    long[,] masses = new long[2*k,2*k];
    long answer = 0;
    for(long i = 0; i < n; i++)
    {
      var nums = Console.ReadLine().Split(' ');//1行ごとに受け取る
      vertexes[i,0] = long.Parse(nums[0]);
      vertexes[i,1] = long.Parse(nums[1]);
      vertexes[i,0] %= 2 * k;
      vertexes[i,1] %= 2 * k;
      if(nums[2] == "W")
      {
        if(vertexes[i,0] < k) vertexes[i,0] += k;//WをBに反転
        else vertexes[i,0] -= k;
      }
    
      masses[vertexes[i,0], vertexes[i,1]]++;
      if(vertexes[i,0]<k) masses[vertexes[i,0]+k, vertexes[i,1]]--;
      if(vertexes[i,1]<k) masses[vertexes[i,0], vertexes[i,1]+k]--;
      if(vertexes[i,0]<k && vertexes[i,1]<k)masses[vertexes[i,0]+k, vertexes[i,1]+k]++;
      
      if(vertexes[i,0]>0 && vertexes[i,1]>0)//左下
      {
        masses[0, 0]++;
        masses[vertexes[i,0], vertexes[i,1]]++;
        masses[0, vertexes[i,1]]--;
        masses[vertexes[i,0], 0]--;
      }
      if(vertexes[i,0]>0 && vertexes[i,1]<k)//左上
      {
        masses[0, vertexes[i,1]+k]++;
        masses[vertexes[i,0], vertexes[i,1]+k]--;
      }
      if(vertexes[i,0]<k && vertexes[i,1]<k)//右上
      {
        masses[vertexes[i,0]+k, vertexes[i,1]+k]++;
      }
      if(vertexes[i,0]<k && vertexes[i,1]>0)//右下
      {
        masses[vertexes[i,0]+k, vertexes[i,1]]--;
        masses[vertexes[i,0]+k, 0]++;
      }
      if(vertexes[i,0]>k && vertexes[i,1]>k)//右上にいるとき
      {
        masses[0, 0]++;
        masses[vertexes[i,0]-k, vertexes[i,1]-k]++;
        masses[0, vertexes[i,1]-k]--;
        masses[vertexes[i,0]-k, 0]--;

        masses[0, vertexes[i,1]]++;
        masses[vertexes[i,0]-k, vertexes[i,1]]--;
      }
      if(vertexes[i,0]>k && vertexes[i,1]==k)//右中央にいるとき
      {
        masses[0, vertexes[i,1]]++;
        masses[vertexes[i,0]-k, vertexes[i,1]]--;
      }
      if(vertexes[i,0]>k && vertexes[i,1]<k)//右下にいるとき
      {
        masses[0, vertexes[i,1]]++;
        masses[0, vertexes[i,1]+k]--;
        masses[vertexes[i,0]-k, vertexes[i,1]]--;
        masses[vertexes[i,0]-k, vertexes[i,1]+k]++;
      }
      if(vertexes[i,0]==k && vertexes[i,1]>k)//上中央にいるとき
      {
        masses[vertexes[i,0], 0]++;
        masses[vertexes[i,0], vertexes[i,1]-k]--;
      }
      if(vertexes[i,0]<k && vertexes[i,1]>k)//左上にいるとき
      {
        masses[vertexes[i,0], 0]++;
        masses[vertexes[i,0]+k, 0]--;
        masses[vertexes[i,0], vertexes[i,1]-k]--;
        masses[vertexes[i,0]+k, vertexes[i,1]-k]++;
      }

    }

    for(long i = 1; i < 2*k; i++)//右側へたす
    {
      for(long j = 0; j < 2*k; j++)
      {
        masses[i,j] += masses[i-1,j];
      }
    }

    for(long j = 1; j < 2*k; j++)//上側へたす
    {
      for(long i = 0; i < 2*k; i++)
      {
        masses[i,j] += masses[i,j-1];
      }
    }

    for(long i = 0; i < 2*k; i++)
    {
      for(long j = 0; j < 2*k; j++)
      {
        answer = Math.Max(answer, masses[i,j]);
      }
    }
    
		Console.WriteLine(answer);
	}
}

Submission Info

Submission Time
Task D - Checker
User suikameron
Language C# (Mono 4.6.2.0)
Score 0
Code Size 3542 Byte
Status WA
Exec Time 252 ms
Memory 48064 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 500
Status
AC × 2
WA × 1
AC × 12
WA × 19
Set Name Test Cases
Sample 0_000.txt, 0_001.txt, 0_002.txt
All 0_000.txt, 0_001.txt, 0_002.txt, 1_003.txt, 1_004.txt, 1_005.txt, 1_006.txt, 1_007.txt, 1_008.txt, 1_009.txt, 1_010.txt, 1_011.txt, 1_012.txt, 1_013.txt, 1_014.txt, 1_015.txt, 1_016.txt, 1_017.txt, 1_018.txt, 1_019.txt, 1_020.txt, 1_021.txt, 1_022.txt, 1_023.txt, 1_024.txt, 1_025.txt, 1_026.txt, 1_027.txt, 1_028.txt, 1_029.txt, 1_030.txt
Case Name Status Exec Time Memory
0_000.txt WA 22 ms 11476 KB
0_001.txt AC 92 ms 40416 KB
0_002.txt AC 21 ms 11476 KB
1_003.txt AC 90 ms 40416 KB
1_004.txt AC 21 ms 9428 KB
1_005.txt AC 22 ms 11476 KB
1_006.txt WA 21 ms 9428 KB
1_007.txt WA 22 ms 9440 KB
1_008.txt AC 96 ms 40416 KB
1_009.txt AC 23 ms 11452 KB
1_010.txt WA 23 ms 11452 KB
1_011.txt WA 23 ms 9404 KB
1_012.txt WA 24 ms 9440 KB
1_013.txt WA 97 ms 42464 KB
1_014.txt AC 154 ms 14784 KB
1_015.txt WA 158 ms 14784 KB
1_016.txt WA 163 ms 16828 KB
1_017.txt WA 167 ms 17088 KB
1_018.txt WA 252 ms 46012 KB
1_019.txt AC 32 ms 13664 KB
1_020.txt AC 33 ms 13664 KB
1_021.txt AC 33 ms 11616 KB
1_022.txt AC 32 ms 11616 KB
1_023.txt WA 32 ms 11616 KB
1_024.txt WA 33 ms 13424 KB
1_025.txt WA 141 ms 16836 KB
1_026.txt WA 228 ms 46012 KB
1_027.txt WA 146 ms 16836 KB
1_028.txt WA 220 ms 46016 KB
1_029.txt WA 137 ms 14788 KB
1_030.txt WA 218 ms 48064 KB