Submission #2415399


Source Code Expand

import java.util.Scanner;

public class Main {
  
  public static void main(String[] args) {
    
    Scanner sc = new Scanner(System.in);
    
    String s = sc.next();
    int x = Integer.parseInt(sc.next());
    int y = Integer.parseInt(sc.next());
    
    int N = s.length();
    if (x < -N || x > N || y < -N || y > N) {
      System.out.println("No");
      return;
    }
    byte okXe[] = new byte[2 * N + 1];
    byte okXo[] = new byte[2 * N + 1];
    byte okYe[] = new byte[2 * N + 1];
    byte okYo[] = new byte[2 * N + 1];
    for (int i = 0; i < 2 * N + 1; i++) {
      okXe[i] = 0;
      okXo[i] = 0;
      okYe[i] = 0;
      okYo[i] = 0;
    }
    okXe[N] = 1;
    okYe[N] = 1;
    
    int state = 0;
    int count = 0;
    for (int i = 0; i < N; i++) {
      if (s.charAt(i) == 'F') {
        count++;
      }
      if (s.charAt(i) == 'T' || i == N - 1) {
        if (state == 0) {
          okXo[N + count] = 1;
          okXe[N] = 0;
          count = 0;
          state = 1;
        } else if (state == 1) {
          move(okYe, okYo, count);
          count = 0;
          state = 2;
        } else if (state == 2) {
          move(okXo, okXe, count);
          count = 0;
          state = 3;
        } else if (state == 3) {
          move(okYo, okYe, count);
          count = 0;
          state = 4;
        } else if (state == 4) {
          move(okXe, okXo, count);
          count = 0;
          state = 1;
        }
      }
    }
    if (okXe[N + x] + okXo[N + x] == 1 && okYe[N + y] + okYo[N + y] == 1) {
      System.out.println("Yes");
    } else {
      System.out.println("No");
    }
  }
  
  public static void move(byte a[], byte b[], int step) {
    for (int i = 0; i < a.length; i++) {
      if (a[i] == 1) {
        b[i - step] = 1;
        b[i + step] = 1;
        a[i] = 0;
      }
    }
  }
}

Submission Info

Submission Time
Task D - FT Robot
User asuma
Language Java8 (OpenJDK 1.8.0)
Score 500
Code Size 1914 Byte
Status AC
Exec Time 177 ms
Memory 24148 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 500 / 500
Status
AC × 6
AC × 56
Set Name Test Cases
Sample 0_00.txt, 0_01.txt, 0_02.txt, 0_03.txt, 0_04.txt, 0_05.txt
All 0_00.txt, 0_01.txt, 0_02.txt, 0_03.txt, 0_04.txt, 0_05.txt, 1_00.txt, 1_01.txt, 1_02.txt, 1_03.txt, 1_04.txt, 1_05.txt, 1_06.txt, 1_07.txt, 1_08.txt, 1_09.txt, 1_10.txt, 1_11.txt, 1_12.txt, 1_13.txt, 1_14.txt, 1_15.txt, 1_16.txt, 1_17.txt, 1_18.txt, 1_19.txt, 1_20.txt, 1_21.txt, 1_22.txt, 1_23.txt, 1_24.txt, 1_25.txt, 1_26.txt, 1_27.txt, 1_28.txt, 1_29.txt, 1_30.txt, 1_31.txt, 1_32.txt, 1_33.txt, 1_34.txt, 1_35.txt, 1_36.txt, 1_37.txt, 1_38.txt, 1_39.txt, 1_40.txt, 1_41.txt, 1_42.txt, 1_43.txt, 1_44.txt, 1_45.txt, 1_46.txt, 1_47.txt, 1_48.txt, 1_49.txt
Case Name Status Exec Time Memory
0_00.txt AC 89 ms 18644 KB
0_01.txt AC 98 ms 20564 KB
0_02.txt AC 89 ms 20564 KB
0_03.txt AC 90 ms 19668 KB
0_04.txt AC 90 ms 21588 KB
0_05.txt AC 89 ms 19668 KB
1_00.txt AC 108 ms 20052 KB
1_01.txt AC 101 ms 24020 KB
1_02.txt AC 109 ms 21972 KB
1_03.txt AC 110 ms 22100 KB
1_04.txt AC 101 ms 19920 KB
1_05.txt AC 111 ms 19156 KB
1_06.txt AC 153 ms 19796 KB
1_07.txt AC 152 ms 17360 KB
1_08.txt AC 161 ms 20180 KB
1_09.txt AC 162 ms 21972 KB
1_10.txt AC 162 ms 19156 KB
1_11.txt AC 163 ms 19284 KB
1_12.txt AC 140 ms 19540 KB
1_13.txt AC 138 ms 19284 KB
1_14.txt AC 149 ms 22100 KB
1_15.txt AC 150 ms 24020 KB
1_16.txt AC 149 ms 19924 KB
1_17.txt AC 150 ms 21972 KB
1_18.txt AC 152 ms 20048 KB
1_19.txt AC 152 ms 18900 KB
1_20.txt AC 151 ms 20944 KB
1_21.txt AC 152 ms 24148 KB
1_22.txt AC 153 ms 21460 KB
1_23.txt AC 150 ms 22100 KB
1_24.txt AC 150 ms 18900 KB
1_25.txt AC 151 ms 20180 KB
1_26.txt AC 174 ms 18900 KB
1_27.txt AC 177 ms 21204 KB
1_28.txt AC 153 ms 17356 KB
1_29.txt AC 150 ms 19284 KB
1_30.txt AC 135 ms 19668 KB
1_31.txt AC 133 ms 20180 KB
1_32.txt AC 125 ms 19668 KB
1_33.txt AC 127 ms 19924 KB
1_34.txt AC 120 ms 18896 KB
1_35.txt AC 121 ms 21972 KB
1_36.txt AC 120 ms 19668 KB
1_37.txt AC 119 ms 19540 KB
1_38.txt AC 126 ms 20180 KB
1_39.txt AC 126 ms 19156 KB
1_40.txt AC 121 ms 18388 KB
1_41.txt AC 123 ms 19796 KB
1_42.txt AC 141 ms 19284 KB
1_43.txt AC 137 ms 18888 KB
1_44.txt AC 145 ms 20944 KB
1_45.txt AC 142 ms 19028 KB
1_46.txt AC 141 ms 19412 KB
1_47.txt AC 142 ms 19668 KB
1_48.txt AC 135 ms 20052 KB
1_49.txt AC 146 ms 22100 KB