카테고리 없음
노트
TaxosDevloper
2025. 3. 29. 16:07
# みの - ひな 겜
(UNIX기반임)
```text/plain
MINO □□□ vs □□□ HINA
```
## 이렇개 생긴 스텟창에서 진행하는 개임.
---
1. 입력
○○○○○ ~ ●●●●● 의 5비트 입력.
아마 OMR같은걸로도 될거고,
a~z나 세미콜론(;)과 화살표(<)로 입력해도 좋음.
1. 1. 각 입력의 처리
```cpp
#include <iostream>
inline char input_with_register(char reg) {
cin >> reg;
reg -= 'a';
return a;
}
```
```text/plain
01234
○○○○○
```
로 내이밍하겠음
1. 1. 1. `○????` 형태 입력 : 타일 값 맞추기를 시도하기
1. 1. 1. 1. `○▪︎▪︎▪︎○`형태 입력
`(▪︎)▪︎▪︎`에 들어갈 숫자를 인덱스로 받아서 그 인덱스의 숫자가 0이라고 정답을 제출합니다 (괄호친 비트 무시)
1. 1. 1. 2. `○▪︎▪︎▪︎●`형태 입력
`(▪︎)▪︎▪︎`에 들어갈 숫자를 인덱스로 받아서 그 인덱스의 숫자가 1이라고 정답을 제출합니다. (괄호친 비트 무시)
1. 1. 2. `●????` 형태 입력 : 내 타일 섞기
1. 1. 2. 1. `●▪︎▪︎▪︎○` 형태 입력 (뒤집기 추가 안함)
`(▪︎)▪︎▪`︎섞기 코드 룰로 섞습니다. (괄호친 비트 무시)
1. 1. 2. 2. `●▪︎▪︎▪︎●` 형태 입력 (뒤집기 추가 함)
`(▪︎)▪︎▪`︎섞기 코드 룰로 섞습니다. (괄호친 비트 무시)
1. 1. 3.섞기 코드 룰
\[1. 1. 3. 0. 0. \[`000`형태인 사람\] 섞지 않는다.\]
1. 1. 3. 1. 0. \[`000`형태인 사람\] 맞춘값 (1개 맞췄을시) 이나 아직 안 맞춘 값 (1개 남았을시) 를 기준으로, `1.1.3.1.1.` 과 유사한 동작을 한다.
1. 1. 3. 2. 0. \[`000`형태인 사람\] 맞춘값 (1개 맞췄을시) 이나 아직 안 맞춘 값 (1개 남았을시) 를 기준으로, `1.1.3.2.1.` 과 유사한 동작을 한다.
1. 1. 3. 3. 0. \[`000`형태인 사람\] 맞춘값 (1개 맞췄을시) 이나 아직 안 맞춘 값 (1개 남았을시) 를 기준으로, `1.1.3.3.1.` 과 유사한 동작을 한다.
\[1. 1. 3. 0. 1. \[`001`형태인 사람\] 섞지 않는다.\]
1. 1. 3. 1. 1. \[`001`형태인 사람\] `001` 이 되게 ROR한다
1. 1. 3. 2. 1. \[`001`형태인 사람\] `010` 이 되게 ROR한다
1. 1. 3. 3. 1. \[`001`형태인 사람\] `100` 이 되게 ROR한다
\[1. 1. 3. 0. 2. \[`011`형태인 사람\] 섞지 않는다.\]
1. 1. 3. 1. 2. \[`011`형태인 사람\] `110` 이 되게 ROR한다
1. 1. 3. 2. 2. \[`011`형태인 사람\] `101` 이 되게 ROR한다
1. 1. 3. 3. 2. \[`011`형태인 사람\] `011` 이 되게 ROR한다.
\[1. 1. 3. 0. 3. \[`111`형태인 사람\] 섞지 않는다.\]
1. 1. 3. 1. 3. \[`111`형태인 사람\] 맞춘값 (1개 맞췄을시) 이나 아직 안 맞춘 값 (1개 남았을시) 를 기준으로, `1.1.3.1.2.` 과 유사한 동작을 한다.
1. 1. 3. 2. 3. \[`111`형태인 사람\] 이나 아직 안 맞춘 값 (1개 남았을시) 를 기준으로, `1.1.3.2.2.` 과 유사한 동작을 한다.
1. 1. 3. 3. 3. \[`111`형태인 사람\] 이나 아직 안 맞춘 값 (1개 남았을시) 를 기준으로, `1.1.3.3.2.` 과 유사한 동작을 한다.
자기꺼랑 맞지않는 로직을 선택한 경우 안해줌. (사실 지금보니 이개임 수정좀 해야할듯)
---
2. 출력
히나 기준으로 설명하겠음
2. 1. 자신의 pw가 하나 들켰을때
```text/plain
MINO □□□ vs □□■ HINA
```
2. 2. 자신의 pw가 두개 들켰을때
```text/plain
MINO □□□ vs □■■ HINA
```
2. 3. 자신의 pw가 새개 틀렸을때 (자신이 패배함)
```text/plain
MINO □□□ vs ■■■ HINA
```
---
3. 시작과 끝 동작
3. 1. 시작 타이틀 화면 (우측정렬은 RLO를 씀 주의)
```text/plain
みの - ひな
G A M E
MSF htiw krow -
```
3. 1. 1. 히나부터 숫자 이진수로 입력하기.
3. 1. 1. 0. 진행중 (1/6)
```text/plain
みの - ひな
G A M E
(6/1) ■□□□□□
```
3. 1. 1. 1. 진행중 (2/6)
```text/plain
みの - ひな
G A M E
(6/2) ■■□□□□
```
3. 1. 1. 2. 진행중 (3/6)
```text/plain
みの - ひな
G A M E
(6/3) ■■■□□□
```
3. 1. 1. 3. 진행중 (4/6)
```text/plain
みの - ひな
G A M E
(6/4) ■■■■□□
```
3. 1. 1. 4. 진행중 (5/6)
```text/plain
みの - ひな
G A M E
(6/5) ■■■■■□
```
3. 1. 1. 6. done (6/6) (\\a를 출력함으로써 진동이나 비프음을 줌 -> 스토리에 대한 복선 -> \`\[\`부분 이전에 벨)
```text/plain
みの - ひな
G A M E
(6/6) ■■■■■■
[PRESS KEYBOARD TO START]
```
3. 2. 종료 화면 (\\x1B를 이용해서 색상코드)
단순히
```text/plain
[41mMINO 🔪 HINA[0m
```
나
```text/plain
[41mHINA 🔪 MINO[0m
```
임.
---
\[부록\] 사용한 특수문자 모음
ASCII
- 터미널 색상코드용 이스케이프 \`ESC (0x1B)\`
```text/plain
```
- 밸 문자 \`BEL (0x07)\`
```text/plain
```
UNICODE
- 아랍어 어순 정렬 문자 \`RLO (U+202E)\`
```text/plain
```
