Submission #8843440


Source Code Expand

import java.io.*;
import java.util.*;

class Tofu {
  final int x, y, z;
  final int m;
  final int[][] xyzs;
  
  Tofu(int x, int y, int z, int m, int[][] xyzs) {
    this.x = x;
    this.y = y;
    this.z = z;
    this.m = m;
    this.xyzs = xyzs;
  }
  
  int[] calculate() {
    int xMin = Integer.MAX_VALUE;
    int yMin = Integer.MAX_VALUE;
    int zMin = Integer.MAX_VALUE;
    int xMax = 0;
    int yMax = 0;
    int zMax = 0;
    for (int[] xyz : xyzs) {
      xMin = Math.min(xMin, xyz[0]);
      yMin = Math.min(yMin, xyz[1]);
      zMin = Math.min(zMin, xyz[2]);
      xMax = Math.max(xMax, xyz[0]);
      yMax = Math.max(yMax, xyz[1]);
      zMax = Math.max(zMax, xyz[2]);
    }
    
    return new int[]{
      xMin,
      yMin,
      zMin,
      x - xMax - 1,
      y - yMax - 1,
      z - zMax - 1
    };
  }
}

class Solver {
  final int n;
  final Tofu[] ts;
  
  Solver(int n, Tofu[] ts) {
    this.n = n;
    this.ts = ts;
  }
  
  public String solve() {
    int xor = 0;
    for (Tofu t : ts) {
      for (int v : t.calculate()) {
        xor = xor ^ v;
      }
    }
    return xor == 0 ? "LOSE" : "WIN";
  }
}

public class Main {
  private static void execute(ContestReader reader, PrintWriter out) {
    int n = reader.nextInt();
    Tofu[] ts = new Tofu[n];
    for (int i = 0; i < n; i++) {
      int x = reader.nextInt();
      int y = reader.nextInt();
      int z = reader.nextInt();
      int m = reader.nextInt();
      int[][] xyzs = reader.nextInt(m, 3);
      ts[i] = new Tofu(x, y, z, m, xyzs);
    }
    out.println(new Solver(n, ts).solve());
  }
  
  public static void main(String[] args) {
    ContestReader reader = new ContestReader(System.in);
    PrintWriter out = new PrintWriter(System.out);
    execute(reader, out);
    out.flush();
  }
}

class ContestReader {
  private BufferedReader reader;
  private StringTokenizer tokenizer;
  
  ContestReader(InputStream in) {
    reader = new BufferedReader(new InputStreamReader(in));
  }
  
  public String next() {
    while (tokenizer == null || !tokenizer.hasMoreTokens()) {
      try {
        tokenizer = new java.util.StringTokenizer(reader.readLine());
      } catch (Exception e) {
        throw new RuntimeException(e);
      }
    }
    return tokenizer.nextToken();
  }
  
  public int nextInt() {
    return Integer.parseInt(next());
  }
  
  public long nextLong() {
    return Long.parseLong(next());
  }
  
  public double nextDouble() {
    return Double.parseDouble(next());
  }
  
  public String[] next(int n) {
    String[] array = new String[n];
    for (int i = 0; i < n; i++) {
      array[i] = next();
    }
    return array;
  }
  
  public int[] nextInt(int n) {
    int[] array = new int[n];
    for (int i = 0; i < n; i++) {
      array[i] = nextInt();
    }
    return array;
  }
  
  public long[] nextLong(int n) {
    long[] array = new long[n];
    for (int i = 0; i < n; i++) {
      array[i] = nextLong();
    }
    return array;
  }
  
  public double[] nextDouble(int n) {
    double[] array = new double[n];
    for (int i = 0; i < n; i++) {
      array[i] = nextDouble();
    }
    return array;
  }
  
  public char[] nextCharArray() {
    return next().toCharArray();
  }
  
  public int[][] nextInt(int n, int m) {
    int[][] matrix = new int[n][m];
    for (int i = 0; i < n; i++) {
      for (int j = 0; j < m; j++) {
        matrix[i][j] = nextInt();
      }
    }
    return matrix;
  }
  
  public long[][] nextLong(int n, int m) {
    long[][] matrix = new long[n][m];
    for (int i = 0; i < n; i++) {
      for (int j = 0; j < m; j++) {
        matrix[i][j] = nextLong();
      }
    }
    return matrix;
  }
  
  public double[][] nextDouble(int n, int m) {
    double[][] matrix = new double[n][m];
    for (int i = 0; i < n; i++) {
      for (int j = 0; j < m; j++) {
        matrix[i][j] = nextDouble();
      }
    }
    return matrix;
  }
  
  public char[][] nextCharArray(int n) {
    char[][] matrix = new char[n][];
    for (int i = 0; i < n; i++) {
      matrix[i] = next().toCharArray();
    }
    return matrix;
  }
}

Submission Info

Submission Time
Task C - 笑いをとれるかな?
User toshihoge
Language Java8 (OpenJDK 1.8.0)
Score 100
Code Size 4077 Byte
Status AC
Exec Time 261 ms
Memory 45972 KB

Judge Result

Set Name part1 part2
Score / Max Score 30 / 30 70 / 70
Status
AC × 36
AC × 69
Set Name Test Cases
part1 small/small_00_sample_01.txt, small/small_00_sample_02.txt, small/small_01_rand_00.txt, small/small_01_rand_01.txt, small/small_01_rand_02.txt, small/small_01_rand_03.txt, small/small_01_rand_04.txt, small/small_01_rand_05.txt, small/small_01_rand_06.txt, small/small_01_rand_07.txt, small/small_01_rand_08.txt, small/small_01_rand_09.txt, small/small_02_maxrand_00.txt, small/small_02_maxrand_01.txt, small/small_02_maxrand_02.txt, small/small_02_maxrand_03.txt, small/small_02_maxrand_04.txt, small/small_02_maxrand_05.txt, small/small_02_maxrand_06.txt, small/small_02_maxrand_07.txt, small/small_02_maxrand_08.txt, small/small_02_maxrand_09.txt, small/small_03_max_00.txt, small/small_03_max_01.txt, small/small_04_loserand_00.txt, small/small_04_loserand_01.txt, small/small_04_loserand_02.txt, small/small_04_loserand_03.txt, small/small_04_loserand_04.txt, small/small_04_loserand_05.txt, small/small_04_loserand_06.txt, small/small_04_loserand_07.txt, small/small_04_loserand_08.txt, small/small_04_loserand_09.txt, small/small_99_min_01.txt, small/small_99_min_02.txt
part2 small/small_00_sample_01.txt, small/small_00_sample_02.txt, small/small_01_rand_00.txt, small/small_01_rand_01.txt, small/small_01_rand_02.txt, small/small_01_rand_03.txt, small/small_01_rand_04.txt, small/small_01_rand_05.txt, small/small_01_rand_06.txt, small/small_01_rand_07.txt, small/small_01_rand_08.txt, small/small_01_rand_09.txt, small/small_02_maxrand_00.txt, small/small_02_maxrand_01.txt, small/small_02_maxrand_02.txt, small/small_02_maxrand_03.txt, small/small_02_maxrand_04.txt, small/small_02_maxrand_05.txt, small/small_02_maxrand_06.txt, small/small_02_maxrand_07.txt, small/small_02_maxrand_08.txt, small/small_02_maxrand_09.txt, small/small_03_max_00.txt, small/small_03_max_01.txt, small/small_04_loserand_00.txt, small/small_04_loserand_01.txt, small/small_04_loserand_02.txt, small/small_04_loserand_03.txt, small/small_04_loserand_04.txt, small/small_04_loserand_05.txt, small/small_04_loserand_06.txt, small/small_04_loserand_07.txt, small/small_04_loserand_08.txt, small/small_04_loserand_09.txt, small/small_99_min_01.txt, small/small_99_min_02.txt, large/large_00_sample_03.txt, large/large_01_rand_00.txt, large/large_01_rand_01.txt, large/large_01_rand_02.txt, large/large_01_rand_03.txt, large/large_01_rand_04.txt, large/large_01_rand_05.txt, large/large_01_rand_06.txt, large/large_01_rand_07.txt, large/large_01_rand_08.txt, large/large_01_rand_09.txt, large/large_02_maxrand_00.txt, large/large_02_maxrand_01.txt, large/large_02_maxrand_02.txt, large/large_02_maxrand_03.txt, large/large_02_maxrand_04.txt, large/large_02_maxrand_05.txt, large/large_02_maxrand_06.txt, large/large_02_maxrand_07.txt, large/large_02_maxrand_08.txt, large/large_02_maxrand_09.txt, large/large_03_max_00.txt, large/large_03_max_01.txt, large/large_04_loserand_00.txt, large/large_04_loserand_01.txt, large/large_04_loserand_02.txt, large/large_04_loserand_03.txt, large/large_04_loserand_04.txt, large/large_04_loserand_05.txt, large/large_04_loserand_06.txt, large/large_04_loserand_07.txt, large/large_04_loserand_08.txt, large/large_04_loserand_09.txt
Case Name Status Exec Time Memory
large/large_00_sample_03.txt AC 82 ms 18516 KB
large/large_01_rand_00.txt AC 146 ms 30392 KB
large/large_01_rand_01.txt AC 113 ms 20308 KB
large/large_01_rand_02.txt AC 155 ms 30288 KB
large/large_01_rand_03.txt AC 124 ms 24404 KB
large/large_01_rand_04.txt AC 158 ms 32984 KB
large/large_01_rand_05.txt AC 148 ms 25840 KB
large/large_01_rand_06.txt AC 139 ms 28076 KB
large/large_01_rand_07.txt AC 154 ms 30632 KB
large/large_01_rand_08.txt AC 110 ms 22868 KB
large/large_01_rand_09.txt AC 158 ms 30832 KB
large/large_02_maxrand_00.txt AC 164 ms 30648 KB
large/large_02_maxrand_01.txt AC 157 ms 29792 KB
large/large_02_maxrand_02.txt AC 158 ms 29480 KB
large/large_02_maxrand_03.txt AC 159 ms 32096 KB
large/large_02_maxrand_04.txt AC 165 ms 29812 KB
large/large_02_maxrand_05.txt AC 159 ms 30900 KB
large/large_02_maxrand_06.txt AC 158 ms 32240 KB
large/large_02_maxrand_07.txt AC 151 ms 30632 KB
large/large_02_maxrand_08.txt AC 155 ms 32424 KB
large/large_02_maxrand_09.txt AC 162 ms 29976 KB
large/large_03_max_00.txt AC 256 ms 45524 KB
large/large_03_max_01.txt AC 261 ms 45972 KB
large/large_04_loserand_00.txt AC 122 ms 24788 KB
large/large_04_loserand_01.txt AC 115 ms 23636 KB
large/large_04_loserand_02.txt AC 120 ms 26068 KB
large/large_04_loserand_03.txt AC 113 ms 22100 KB
large/large_04_loserand_04.txt AC 115 ms 22996 KB
large/large_04_loserand_05.txt AC 112 ms 22484 KB
large/large_04_loserand_06.txt AC 115 ms 24276 KB
large/large_04_loserand_07.txt AC 117 ms 23248 KB
large/large_04_loserand_08.txt AC 114 ms 23380 KB
large/large_04_loserand_09.txt AC 121 ms 23852 KB
small/small_00_sample_01.txt AC 80 ms 17620 KB
small/small_00_sample_02.txt AC 82 ms 19284 KB
small/small_01_rand_00.txt AC 75 ms 21328 KB
small/small_01_rand_01.txt AC 72 ms 16084 KB
small/small_01_rand_02.txt AC 84 ms 17876 KB
small/small_01_rand_03.txt AC 81 ms 19412 KB
small/small_01_rand_04.txt AC 70 ms 18388 KB
small/small_01_rand_05.txt AC 82 ms 21460 KB
small/small_01_rand_06.txt AC 74 ms 21460 KB
small/small_01_rand_07.txt AC 72 ms 19796 KB
small/small_01_rand_08.txt AC 75 ms 19284 KB
small/small_01_rand_09.txt AC 72 ms 17876 KB
small/small_02_maxrand_00.txt AC 71 ms 17620 KB
small/small_02_maxrand_01.txt AC 74 ms 21460 KB
small/small_02_maxrand_02.txt AC 73 ms 20820 KB
small/small_02_maxrand_03.txt AC 82 ms 20820 KB
small/small_02_maxrand_04.txt AC 75 ms 19156 KB
small/small_02_maxrand_05.txt AC 72 ms 21204 KB
small/small_02_maxrand_06.txt AC 80 ms 19412 KB
small/small_02_maxrand_07.txt AC 82 ms 18388 KB
small/small_02_maxrand_08.txt AC 73 ms 20436 KB
small/small_02_maxrand_09.txt AC 81 ms 18516 KB
small/small_03_max_00.txt AC 75 ms 20692 KB
small/small_03_max_01.txt AC 74 ms 19412 KB
small/small_04_loserand_00.txt AC 118 ms 20820 KB
small/small_04_loserand_01.txt AC 74 ms 20820 KB
small/small_04_loserand_02.txt AC 84 ms 19540 KB
small/small_04_loserand_03.txt AC 84 ms 22740 KB
small/small_04_loserand_04.txt AC 85 ms 20564 KB
small/small_04_loserand_05.txt AC 72 ms 20820 KB
small/small_04_loserand_06.txt AC 73 ms 21588 KB
small/small_04_loserand_07.txt AC 83 ms 19924 KB
small/small_04_loserand_08.txt AC 72 ms 19668 KB
small/small_04_loserand_09.txt AC 72 ms 21460 KB
small/small_99_min_01.txt AC 75 ms 19540 KB
small/small_99_min_02.txt AC 72 ms 21332 KB