提出 #6373786
ソースコード 拡げる
import java.io.OutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.PrintWriter;
import java.util.Arrays;
import java.util.InputMismatchException;
import java.io.IOException;
import java.io.InputStream;
/**
* Built using CHelper plug-in
* Actual solution is at the top
*
* @author Jeel Vaishnav
*/
public class Main {
public static void main(String[] args) {
InputStream inputStream = System.in;
OutputStream outputStream = System.out;
InputReader in = new InputReader(inputStream);
PrintWriter out = new PrintWriter(outputStream);
AXORCircle solver = new AXORCircle();
solver.solve(1, in, out);
out.close();
}
static class AXORCircle {
public void solve(int testNumber, InputReader sc, PrintWriter out) {
int n = sc.nextInt();
int a[] = new int[n];
for (int i = 0; i < n; ++i)
a[i] = sc.nextInt();
if (n % 3 != 0) {
int flag = 0;
for (int i = 0; i < n; ++i) {
if (a[i] != 0)
flag = 1;
}
if (flag == 0)
out.print("Yes");
else
out.print("No");
return;
}
Arrays.sort(a);
int flag = 0;
int val[] = new int[3];
for (int i = 0; i < 3; ++i) {
int start = n / 3 * i;
for (int delta = 0; delta < n / 3; ++delta) {
if (a[start + delta] != a[start])
flag = 1;
}
val[i] = a[start];
}
int xor = val[0] ^ val[1] ^ val[2];
if (xor != 0)
flag = 1;
if (flag == 0)
out.print("Yes");
else
out.print("No");
}
}
static class InputReader {
private InputStream stream;
private byte[] buf = new byte[1024];
private int curChar;
private int numChars;
private InputReader.SpaceCharFilter filter;
public InputReader(InputStream stream) {
this.stream = stream;
}
public int read() {
if (numChars == -1)
throw new InputMismatchException();
if (curChar >= numChars) {
curChar = 0;
try {
numChars = stream.read(buf);
} catch (IOException e) {
throw new InputMismatchException();
}
if (numChars <= 0)
return -1;
}
return buf[curChar++];
}
public int nextInt() {
int c = read();
while (isSpaceChar(c))
c = read();
int sgn = 1;
if (c == '-') {
sgn = -1;
c = read();
}
int res = 0;
do {
if (c < '0' || c > '9')
throw new InputMismatchException();
res *= 10;
res += c - '0';
c = read();
}
while (!isSpaceChar(c));
return res * sgn;
}
public boolean isSpaceChar(int c) {
if (filter != null)
return filter.isSpaceChar(c);
return c == ' ' || c == '\n' || c == '\r' || c == '\t' || c == -1;
}
public interface SpaceCharFilter {
public boolean isSpaceChar(int ch);
}
}
}
提出情報
| 提出日時 | |
|---|---|
| 問題 | A - XOR Circle |
| ユーザ | jeel_vaishnav |
| 言語 | Java8 (OpenJDK 1.8.0) |
| 得点 | 300 |
| コード長 | 3786 Byte |
| 結果 | AC |
| 実行時間 | 146 ms |
| メモリ | 26544 KiB |
ジャッジ結果
| セット名 | Sample | All | ||||
|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 300 / 300 | ||||
| 結果 |
|
|
| セット名 | テストケース |
|---|---|
| Sample | sample_01.txt, sample_02.txt |
| All | sample_01.txt, sample_02.txt, test_01.txt, test_02.txt, test_03.txt, test_04.txt, test_05.txt, test_06.txt, test_07.txt, test_08.txt, test_09.txt, test_10.txt, test_11.txt, test_12.txt, test_13.txt, test_14.txt, test_15.txt, test_16.txt, test_17.txt, test_18.txt, test_19.txt, test_20.txt |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| sample_01.txt | AC | 72 ms | 24916 KiB |
| sample_02.txt | AC | 69 ms | 20052 KiB |
| test_01.txt | AC | 84 ms | 21588 KiB |
| test_02.txt | AC | 87 ms | 22100 KiB |
| test_03.txt | AC | 82 ms | 19028 KiB |
| test_04.txt | AC | 104 ms | 21460 KiB |
| test_05.txt | AC | 106 ms | 22356 KiB |
| test_06.txt | AC | 93 ms | 22224 KiB |
| test_07.txt | AC | 92 ms | 21460 KiB |
| test_08.txt | AC | 85 ms | 21204 KiB |
| test_09.txt | AC | 86 ms | 21588 KiB |
| test_10.txt | AC | 108 ms | 19924 KiB |
| test_11.txt | AC | 101 ms | 19156 KiB |
| test_12.txt | AC | 105 ms | 21204 KiB |
| test_13.txt | AC | 105 ms | 20564 KiB |
| test_14.txt | AC | 85 ms | 20948 KiB |
| test_15.txt | AC | 102 ms | 21588 KiB |
| test_16.txt | AC | 80 ms | 18900 KiB |
| test_17.txt | AC | 88 ms | 19028 KiB |
| test_18.txt | AC | 88 ms | 21076 KiB |
| test_19.txt | AC | 82 ms | 20180 KiB |
| test_20.txt | AC | 146 ms | 26544 KiB |