Submission #994683
Source Code Expand
import static java.lang.System.in; import static java.lang.System.out; import java.io.*; import java.util.*; public class Main { static final double EPS = 1e-10; static final double INF = 1L << 31; static final double PI = Math.PI; public static Scanner sc = new Scanner(in); StringBuilder sb = new StringBuilder(); BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); public void run() throws IOException { String input; String[] inputArray; input = br.readLine(); inputArray = input.split(" "); int n = Integer.valueOf(inputArray[0]); int m = Integer.valueOf(inputArray[1]); int [] mods = new int[m]; input = br.readLine(); inputArray = input.split(" "); int ans = 0; HashSet<Integer> set = new HashSet<Integer>(); int [] pairs = new int[m]; for (int i=0; i<n; i++){ int x = Integer.valueOf(inputArray[i]); if (set.contains(x)){ set.remove(x); pairs[x%m]++; } else{ set.add(x); } mods[x%m]++; } ans += mods[0]/2; for (int i=1; i<(m+1)/2; i++){ ans += Math.min(mods[i],mods[m-i]); if (mods[i]>mods[m-i]){ ans += Math.min((mods[i]-mods[m-i])/2, pairs[i]); } else{ ans += Math.min((mods[m-i]-mods[i])/2, pairs[m-i]); } } if (m%2==0){ ans+=mods[m/2]/2; } // for (int i=0; i<m; i++) // sb.append(mods[i] + " "); // ln(sb); ln(ans); } public static void main(String[] args) throws IOException { new Main().run(); } public static void ln(Object obj) { out.println(obj); } }
Submission Info
Submission Time | |
---|---|
Task | D - Pair Cards |
User | batchunag |
Language | Java7 (OpenJDK 1.7.0) |
Score | 700 |
Code Size | 1580 Byte |
Status | AC |
Exec Time | 524 ms |
Memory | 36944 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 | 135 ms | 9044 KB |
01-02.txt | AC | 356 ms | 36308 KB |
01-03.txt | AC | 346 ms | 36132 KB |
01-04.txt | AC | 373 ms | 36228 KB |
01-05.txt | AC | 356 ms | 36144 KB |
01-06.txt | AC | 399 ms | 35348 KB |
01-07.txt | AC | 408 ms | 36632 KB |
01-08.txt | AC | 422 ms | 36332 KB |
01-09.txt | AC | 353 ms | 36056 KB |
01-10.txt | AC | 372 ms | 36200 KB |
01-11.txt | AC | 369 ms | 36944 KB |
01-12.txt | AC | 356 ms | 34972 KB |
01-13.txt | AC | 352 ms | 34364 KB |
01-14.txt | AC | 336 ms | 36472 KB |
01-15.txt | AC | 327 ms | 36560 KB |
01-16.txt | AC | 338 ms | 36396 KB |
01-17.txt | AC | 349 ms | 36712 KB |
01-18.txt | AC | 341 ms | 36324 KB |
01-19.txt | AC | 524 ms | 36492 KB |
01-20.txt | AC | 336 ms | 36536 KB |
01-21.txt | AC | 374 ms | 35176 KB |
01-22.txt | AC | 364 ms | 35544 KB |
01-23.txt | AC | 366 ms | 35332 KB |
01-24.txt | AC | 385 ms | 35264 KB |
01-25.txt | AC | 378 ms | 35584 KB |
01-26.txt | AC | 397 ms | 36072 KB |
01-27.txt | AC | 295 ms | 23692 KB |
01-28.txt | AC | 207 ms | 13832 KB |
01-29.txt | AC | 153 ms | 9940 KB |
01-30.txt | AC | 152 ms | 10452 KB |
sample-01.txt | AC | 135 ms | 8916 KB |
sample-02.txt | AC | 128 ms | 8916 KB |