Submission #993130
Source Code Expand
using System; using System.Text; using System.Collections.Generic; class Solve{ int N,M; int[] X; public Solve(){} StringBuilder sb; public static int Main(){ new Solve().Run(); return 0; } void Run(){ sb = new StringBuilder(); Read(); Calc(); Console.Write(sb.ToString()); } void Calc(){ int[] A = new int[100001]; for(int i=0;i<100001;i++){ A[i] = 0; } for(int i=0;i<N;i++){ A[X[i]]++; } int[] B = new int[M]; int[] C = new int[M]; for(int i=0;i<M;i++){ B[i] = 0; C[i] = 0; } for(int i=0;i<100001;i++){ B[i%M] += A[i]; if(A[i] % 2 == 0){ C[i%M] += A[i]; } else{ C[i%M] += A[i] - 1; } } int count = 0; for(int i=0;i <= M-i;i++){ if(i == M-i || i == 0){ count += B[i]/2; } else{ if(B[i] > B[M-i]){ count += B[M-i]; if(C[i] > B[i] - B[M-i]){ count += (B[i] - B[M-i])/2; } else{ count += C[i]/2; } } else{ count += B[i]; if(C[M-i] > B[M-i] - B[i]){ count += (B[M-i] - B[i])/2; } else{ count += C[M-i]/2; } } } } sb.Append(count+"\n"); } void Read(){ string[] str = Console.ReadLine().Split(' '); N = int.Parse(str[0]); M = int.Parse(str[1]); X = new int[N]; str = Console.ReadLine().Split(' '); for(int i=0;i<N;i++){ X[i] = int.Parse(str[i]); } } }
Submission Info
Submission Time | |
---|---|
Task | D - Pair Cards |
User | leign |
Language | C# (Mono 4.6.2.0) |
Score | 700 |
Code Size | 2078 Byte |
Status | AC |
Exec Time | 60 ms |
Memory | 10968 KB |
Judge Result
Set Name | sample | all | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 700 / 700 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
sample | sample-01.txt, sample-02.txt |
all | sample-01.txt, sample-02.txt, 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 01-11.txt, 01-12.txt, 01-13.txt, 01-14.txt, 01-15.txt, 01-16.txt, 01-17.txt, 01-18.txt, 01-19.txt, 01-20.txt, 01-21.txt, 01-22.txt, 01-23.txt, 01-24.txt, 01-25.txt, 01-26.txt, 01-27.txt, 01-28.txt, 01-29.txt, 01-30.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
01-01.txt | AC | 22 ms | 3160 KB |
01-02.txt | AC | 59 ms | 10200 KB |
01-03.txt | AC | 59 ms | 10200 KB |
01-04.txt | AC | 58 ms | 10200 KB |
01-05.txt | AC | 58 ms | 10200 KB |
01-06.txt | AC | 58 ms | 10200 KB |
01-07.txt | AC | 59 ms | 10200 KB |
01-08.txt | AC | 58 ms | 10200 KB |
01-09.txt | AC | 59 ms | 10200 KB |
01-10.txt | AC | 59 ms | 10584 KB |
01-11.txt | AC | 60 ms | 10968 KB |
01-12.txt | AC | 57 ms | 10200 KB |
01-13.txt | AC | 58 ms | 10584 KB |
01-14.txt | AC | 58 ms | 10200 KB |
01-15.txt | AC | 58 ms | 10200 KB |
01-16.txt | AC | 57 ms | 10200 KB |
01-17.txt | AC | 58 ms | 10200 KB |
01-18.txt | AC | 58 ms | 10200 KB |
01-19.txt | AC | 58 ms | 10328 KB |
01-20.txt | AC | 59 ms | 10968 KB |
01-21.txt | AC | 58 ms | 10200 KB |
01-22.txt | AC | 59 ms | 10200 KB |
01-23.txt | AC | 58 ms | 10200 KB |
01-24.txt | AC | 58 ms | 10200 KB |
01-25.txt | AC | 59 ms | 10456 KB |
01-26.txt | AC | 59 ms | 10968 KB |
01-27.txt | AC | 41 ms | 7512 KB |
01-28.txt | AC | 24 ms | 4184 KB |
01-29.txt | AC | 22 ms | 3544 KB |
01-30.txt | AC | 22 ms | 3928 KB |
sample-01.txt | AC | 21 ms | 3160 KB |
sample-02.txt | AC | 21 ms | 3160 KB |