포럼
문제 USACO0533

역공학

설명

엘시는 각각 0 또는 1인 \(N\)개(\(1\le N\le 100\))의 변수 \(b[0],\dots,b[N-1]\)로 이루어진 배열을 입력으로 받아, 입력에 일련의 if / else if / else 문을 적용한 결과를 반환하는 프로그램을 가지고 있다. 각 문장은 최대 하나의 입력 변수의 값을 검사하며, 0 또는 1을 반환한다. 그런 프로그램의 예시는 다음과 같다.

if (b[1] == 1) return 1;
else if (b[0] == 0) return 0;
else return 1;

예를 들어 위 프로그램의 입력이 "10"(즉, \(b[0] = 1\)이고 \(b[1] = 0\))이면 출력은 1이어야 한다.

엘시는 베시에게 \(M\)개(\(1\le M\le 100\))의 서로 다른 입력에 대한 올바른 출력을 알려 주었다. 베시는 이제 엘시의 프로그램을 역공학하려 하고 있다. 안타깝게도 엘시가 거짓말을 했을 수도 있다. 즉, 위와 같은 형태의 프로그램 중 엘시가 말한 내용과 일치하는 것이 하나도 없을 수도 있다.

\(T\)개(\(1\le T\le 10\))의 각 테스트 케이스에 대해, 엘시가 반드시 거짓말을 하고 있는지 아닌지 판별하시오.

출제: Benjamin Qi

제약

배점

  • 입력 2와 3은 \(N = 2\)이다.
  • 입력 4와 5는 \(M = 2\)이다.
  • 입력 6부터 12까지는 추가 제약이 없다.

출제: Benjamin Qi

입력 형식

첫째 줄에 테스트 케이스의 수 \(T\)가 주어진다.

각 테스트 케이스는 두 정수 \(N\)\(M\)으로 시작하며, 이어서 \(M\)개의 줄이 주어진다. 각 줄에는 입력(즉, \(b[0] \ldots b[N-1]\)의 값)을 나타내는 0과 1로 이루어진 길이 \(N\)의 문자열과, 출력을 나타내는 추가 문자 하나(0 또는 1)가 주어진다. 연속한 테스트 케이스는 빈 줄로 구분된다.

출력 형식

각 테스트 케이스에 대해 "OK" 또는 "LIE"를 한 줄에 하나씩 출력한다.

예제 1
입력
4

1 3
0 0
0 0
1 1

2 4
00 0
01 1
10 1
11 1

1 2
0 1
0 0

2 4
00 0
01 1
10 1
11 0
출력
OK
OK
LIE
LIE
설명

Here's a valid program for the first test case:

if (b[0] == 0) return 0;
else return 1;

Another valid program for the first test case:

if (b[0] == 1) return 1;
else return 0;

A valid program for the second test case:

if (b[1] == 1) return 1;
else if (b[0] == 0) return 0;
else return 1;

Clearly, there is no valid program corresponding to the third test case, because
Elsie's program must always produce the same output for the same input.

It may be shown that there is no valid program corresponding to the last test
case.

문제 정보

riseoj 작성

출처 올림피아드 > USACO > 2022-2023 > December > Bronze

태그

평가 및 의견

Reverse Engineering

개요
출제자 난이도 Unrated 레이팅 미적용 의견 0 / 1 공개 집계 (커뮤니티 난이도, 주요 주제, 품질)는 의견이 충분히 모이면 공개됩니다.

Log in to rate problems.

개별 의견

아직 의견이 없습니다. 자격이 된다면 위 양식에서 가장 먼저 평가해 보세요.

풀이 제출

Reverse Engineering

게스트로 둘러보고 있습니다. 로그인하면 풀이를 제출하고 진행 상황을 확인할 수 있습니다. 로그인하고 제출하기
공개
C++20 Tab 들여쓰기 · Ctrl+/ 주석 토글 · Enter 자동 들여쓰기
1 1 1 0 공백: 4 · UTF-8