답안 #668826

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
668826 2022-12-05T03:51:34 Z as111 게임판 (CEOI13_board) C++14
0 / 100
200 ms 1232 KB
#include <iostream>
#include <string>
#define MAXN 100000

using namespace std;
int bitA[MAXN + 5];
int bitB[MAXN + 5];
int main() {
	string A, B;
	cin >> A >> B;
	int startA = 0;
	int startB = 0;
	int endA = 0;
	int endB = 0;
	for (int i = 0; i < A.length(); i++) {
		if (A[i] == '1') {
			bitA[endA] = 0;
			endA++;
		}
		if (A[i] == '2') {
			bitA[endA] = 1;
			endA++;
		}
		if (A[i] == 'U') {
			endA--;
		}
		if (A[i] == 'L') { // subtract 1
			if (bitA[endA] == 1)bitA[endA] = 0;
			if (bitA[endA] == 0) {
				int pos = endA;
				while (pos > 0) {
					if (bitA[pos] == 1) {
						bitA[pos] = 0;
						break;
					}
					bitA[pos] = 1;
					pos--;
				}
			}
		}
		if (A[i] == 'R') { // add 1
			if (bitA[endA] == 0)bitA[endA] = 1;
			if (bitA[endA] == 1) {
				int pos = endA;
				while (pos > 0) {
					if (bitA[pos] == 0) {
						bitA[pos] = 1;
						break;
					}
					bitA[pos] = 0;
					pos--;
				}
			}
		}
	}
	for (int i = 0; i < B.length(); i++) {
		if (B[i] == '1') {
			bitB[endB] = 0;
			endB++;
		}
		if (B[i] == '2') {
			bitB[endB] = 1;
			endB++;
		}
		if (B[i] == 'U') {
			endB--;
		}
		if (B[i] == 'L') { // subtract 1
			if (bitB[endB] == 1)bitB[endB] = 0;
			if (bitB[endB] == 0) {
				int pos = endB;
				while (pos > 0) {
					if (bitB[pos] == 1) {
						bitB[pos] = 0;
						break;
					}
					bitB[pos] = 1;
					pos--;
				}
			}
		}
		if (B[i] == 'R') { // add 1
			if (bitB[endB] == 0)bitB[endB] = 1;
			if (bitB[endB] == 1) {
				int pos = endB;
				while (pos > 0) {
					if (bitB[pos] == 0) {
						bitB[pos] = 1;
						break;
					}
					bitB[pos] = 0;
					pos--;
				}
			}
		}
	}

}

Compilation message

board.cpp: In function 'int main()':
board.cpp:15:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   15 |  for (int i = 0; i < A.length(); i++) {
      |                  ~~^~~~~~~~~~~~
board.cpp:56:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   56 |  for (int i = 0; i < B.length(); i++) {
      |                  ~~^~~~~~~~~~~~
board.cpp:11:6: warning: unused variable 'startA' [-Wunused-variable]
   11 |  int startA = 0;
      |      ^~~~~~
board.cpp:12:6: warning: unused variable 'startB' [-Wunused-variable]
   12 |  int startB = 0;
      |      ^~~~~~
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 212 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 5 ms 580 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 212 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 340 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 340 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 320 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 3 ms 340 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 989 ms 1128 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 945 ms 1232 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 945 ms 1128 KB Time limit exceeded
2 Halted 0 ms 0 KB -