Submission #1170393


Source Code Expand

import java.util.Random;
import java.util.Scanner;

public class Main {
  static Scanner sc = new Scanner(System.in);
  static Random rnd = new Random(42);
  static int qc = 0;
  static int A, B, N;

  public static void main(String[] args) {
    A = sc.nextInt();
    B = sc.nextInt();
    N = A + B;
    if (A <= B) {
      System.out.println("Impossible");
      return;
    }
    int start = 0;
    int restA = A;
    int honest = -1;
    OUT:while (true){
      if (start == N - 1) {
        honest = start;
        break;
      }
      int cur = start;
      int next = cur + 1;
      int count = 1;
      while (true){
        boolean res = query(cur, next);
        if (res){
          ++count;
          if (count == restA) {
            honest = next;
            break OUT;
          } else {
            cur = next;
            next = cur + 1;
          }
        } else {
          if (next - start + 1 >= count * 2) {
            start = next + 1;
            restA -= count;
            break;
          }
          next++;
        }
      }
    }
    int[] result = new int[N];
    for (int i = 0; i < N; i++) {
      result[i] = query(honest, i) ? 1 : 0;
    }
    System.out.print("! ");
    for (int i = 0; i < N; i++) {
      System.out.print(result[i]);
    }
    System.out.println();
  }

  static boolean query(int a, int b) {
    ++qc;
    System.out.println("? " + a + " " + b);
    String ret = sc.next();
    return ret.charAt(0) == 'Y';
  }

}

Submission Info

Submission Time
Task F - HonestOrUnkind
User tomerun
Language Java8 (OpenJDK 1.8.0)
Score 1300
Code Size 1541 Byte
Status AC
Exec Time 585 ms
Memory 44892 KB

Judge Result

Set Name All
Score / Max Score 1300 / 1300
Status
AC × 126
Set Name Test Cases
All 000.txt, 001.txt, 002.txt, 003.txt, 004.txt, 005.txt, 006.txt, 007.txt, 008.txt, 009.txt, 010.txt, 011.txt, 012.txt, 013.txt, 014.txt, 015.txt, 016.txt, 017.txt, 018.txt, 019.txt, 020.txt, 021.txt, 022.txt, 023.txt, 024.txt, 025.txt, 026.txt, 027.txt, 028.txt, 029.txt, 030.txt, 031.txt, 032.txt, 033.txt, 034.txt, 035.txt, 036.txt, 037.txt, 038.txt, 039.txt, 040.txt, 041.txt, 042.txt, 043.txt, 044.txt, 045.txt, 046.txt, 047.txt, 048.txt, 049.txt, 050.txt, 051.txt, 052.txt, 053.txt, 054.txt, 055.txt, 056.txt, 057.txt, 058.txt, 059.txt, 060.txt, 061.txt, 062.txt, 063.txt, 064.txt, 065.txt, 066.txt, 067.txt, 068.txt, 069.txt, 070.txt, 071.txt, 072.txt, 073.txt, 074.txt, 075.txt, 076.txt, 077.txt, 078.txt, 079.txt, 080.txt, 081.txt, 082.txt, 083.txt, 084.txt, 085.txt, 086.txt, 087.txt, 088.txt, 089.txt, 090.txt, 091.txt, 092.txt, 093.txt, 094.txt, 095.txt, 096.txt, 097.txt, 098.txt, 099.txt, 100.txt, 101.txt, 102.txt, 103.txt, 104.txt, 105.txt, 106.txt, 107.txt, 108.txt, 109.txt, 110.txt, 111.txt, 112.txt, 113.txt, 114.txt, 115.txt, 116.txt, 117.txt, 118.txt, 119.txt, 120.txt, 121.txt, 122.txt, 123.txt, 124.txt, 125.txt
Case Name Status Exec Time Memory
000.txt AC 97 ms 19748 KB
001.txt AC 96 ms 22176 KB
002.txt AC 95 ms 22052 KB
003.txt AC 98 ms 19748 KB
004.txt AC 95 ms 22180 KB
005.txt AC 97 ms 19108 KB
006.txt AC 97 ms 21284 KB
007.txt AC 96 ms 20004 KB
008.txt AC 94 ms 20392 KB
009.txt AC 95 ms 22184 KB
010.txt AC 151 ms 24100 KB
011.txt AC 533 ms 39420 KB
012.txt AC 350 ms 30816 KB
013.txt AC 96 ms 20892 KB
014.txt AC 97 ms 21028 KB
015.txt AC 99 ms 19620 KB
016.txt AC 99 ms 21792 KB
017.txt AC 96 ms 19236 KB
018.txt AC 95 ms 22180 KB
019.txt AC 94 ms 20260 KB
020.txt AC 95 ms 22052 KB
021.txt AC 97 ms 23592 KB
022.txt AC 98 ms 22052 KB
023.txt AC 160 ms 22180 KB
024.txt AC 523 ms 38728 KB
025.txt AC 373 ms 32840 KB
026.txt AC 95 ms 19492 KB
027.txt AC 96 ms 20132 KB
028.txt AC 94 ms 21284 KB
029.txt AC 95 ms 19108 KB
030.txt AC 96 ms 21540 KB
031.txt AC 99 ms 23968 KB
032.txt AC 96 ms 22052 KB
033.txt AC 97 ms 19620 KB
034.txt AC 97 ms 18980 KB
035.txt AC 99 ms 21032 KB
036.txt AC 166 ms 23460 KB
037.txt AC 509 ms 42692 KB
038.txt AC 360 ms 31956 KB
039.txt AC 96 ms 21920 KB
040.txt AC 95 ms 21668 KB
041.txt AC 95 ms 20892 KB
042.txt AC 97 ms 22052 KB
043.txt AC 97 ms 19364 KB
044.txt AC 137 ms 22056 KB
045.txt AC 98 ms 18972 KB
046.txt AC 95 ms 20260 KB
047.txt AC 97 ms 18720 KB
048.txt AC 99 ms 21412 KB
049.txt AC 156 ms 21668 KB
050.txt AC 523 ms 42020 KB
051.txt AC 376 ms 35948 KB
052.txt AC 97 ms 19748 KB
053.txt AC 97 ms 18980 KB
054.txt AC 95 ms 20260 KB
055.txt AC 98 ms 20132 KB
056.txt AC 96 ms 19112 KB
057.txt AC 97 ms 20004 KB
058.txt AC 94 ms 18980 KB
059.txt AC 97 ms 20000 KB
060.txt AC 97 ms 19620 KB
061.txt AC 95 ms 22304 KB
062.txt AC 151 ms 21664 KB
063.txt AC 539 ms 42932 KB
064.txt AC 386 ms 30824 KB
065.txt AC 95 ms 21024 KB
066.txt AC 96 ms 21924 KB
067.txt AC 96 ms 24096 KB
068.txt AC 95 ms 19748 KB
069.txt AC 96 ms 22052 KB
070.txt AC 97 ms 22176 KB
071.txt AC 95 ms 21024 KB
072.txt AC 97 ms 19232 KB
073.txt AC 96 ms 18976 KB
074.txt AC 97 ms 19876 KB
075.txt AC 150 ms 22180 KB
076.txt AC 530 ms 44892 KB
077.txt AC 340 ms 34124 KB
078.txt AC 98 ms 23332 KB
079.txt AC 95 ms 19236 KB
080.txt AC 97 ms 23080 KB
081.txt AC 98 ms 21924 KB
082.txt AC 96 ms 20900 KB
083.txt AC 94 ms 20132 KB
084.txt AC 96 ms 19236 KB
085.txt AC 95 ms 21020 KB
086.txt AC 96 ms 21924 KB
087.txt AC 96 ms 21412 KB
088.txt AC 152 ms 23452 KB
089.txt AC 514 ms 38988 KB
090.txt AC 377 ms 33892 KB
091.txt AC 95 ms 19620 KB
092.txt AC 96 ms 21924 KB
093.txt AC 97 ms 17956 KB
094.txt AC 96 ms 22180 KB
095.txt AC 99 ms 17448 KB
096.txt AC 96 ms 24228 KB
097.txt AC 96 ms 22176 KB
098.txt AC 98 ms 19620 KB
099.txt AC 99 ms 19236 KB
100.txt AC 98 ms 20900 KB
101.txt AC 149 ms 22184 KB
102.txt AC 585 ms 39212 KB
103.txt AC 355 ms 32136 KB
104.txt AC 96 ms 19752 KB
105.txt AC 95 ms 20132 KB
106.txt AC 95 ms 22180 KB
107.txt AC 96 ms 19620 KB
108.txt AC 96 ms 19492 KB
109.txt AC 97 ms 22948 KB
110.txt AC 97 ms 19112 KB
111.txt AC 94 ms 22180 KB
112.txt AC 96 ms 19108 KB
113.txt AC 97 ms 22180 KB
114.txt AC 153 ms 20256 KB
115.txt AC 516 ms 41760 KB
116.txt AC 368 ms 33500 KB
117.txt AC 92 ms 19104 KB
118.txt AC 96 ms 23204 KB
119.txt AC 96 ms 21672 KB
120.txt AC 95 ms 20132 KB
121.txt AC 96 ms 20388 KB
122.txt AC 95 ms 19364 KB
123.txt AC 94 ms 22184 KB
124.txt AC 95 ms 18984 KB
125.txt AC 97 ms 21284 KB