Please sign in first.
Submission #53423782
Source Code Expand
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
String dengen = sc.next();
String result = "";
int count = 0;
boolean allOn = false;
/// 必要な箇所を全部ONにする
/// 最後の電源On
int lastOn = dengen.lastIndexOf('1');
/// 右からループしてく
for (int i = lastOn; i >= 0; i--) {
/// 全てOnの時とOffの時で分岐
/// 全てOFFの時
if (!allOn && dengen.charAt(i) == '1') {
/// 所定の場所まで全てONにする
for (int j = 0; j <= i; j++) {
if (i == lastOn && j == 0) {
result = "A";
count++;
allOn = true;
} else {
result = result + "A";
count++;
allOn = true;
}
}
} else if (allOn && dengen.charAt(i) == '0') {
/// 所定の場所まで全てOFFにする
for (int j = 0; j <= i; j++) {
result = result + "B";
count++;
allOn = false;
}
}
}
System.out.println(count);
System.out.println(result);
}
}
Submission Info
| Submission Time | |
|---|---|
| Task | B - Puzzle of Lamps |
| User | andrywawa |
| Language | Java (OpenJDK 17) |
| Score | 400 |
| Code Size | 1529 Byte |
| Status | AC |
| Exec Time | 73 ms |
| Memory | 38268 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 400 / 400 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | sample-01.txt |
| All | in01.txt, in02.txt, in03.txt, in04.txt, in05.txt, in06.txt, in07.txt, in08.txt, in09.txt, sample-01.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| in01.txt | AC | 68 ms | 38060 KiB |
| in02.txt | AC | 67 ms | 37812 KiB |
| in03.txt | AC | 71 ms | 38268 KiB |
| in04.txt | AC | 70 ms | 38116 KiB |
| in05.txt | AC | 70 ms | 38136 KiB |
| in06.txt | AC | 73 ms | 37952 KiB |
| in07.txt | AC | 72 ms | 38188 KiB |
| in08.txt | AC | 71 ms | 38144 KiB |
| in09.txt | AC | 71 ms | 38040 KiB |
| sample-01.txt | AC | 69 ms | 37852 KiB |