반응형
https://www.acmicpc.net/problem/17210
17210번: 문문문
첫째 줄에 총 문의 개수 N(2 ≤ N ≤ 2,500,000,000)이 주어진다. 둘째 줄에는 유신이가 첫 번째 문을 통과할 때 문을 연 방법이 주어진다. 밀어서 여는 법은 숫자 0, 당겨서 여는 법은 숫자 1로 표기된
www.acmicpc.net
간단 구현 문제였습니다.
📕 풀이방법
📔 입력 및 초기화
문 개수와 문을 연 방법에 대해 변수를 선언해 입력받습니다.
📔 풀이과정
규칙 4는 문의 개수가 6인 것부터 만족할 수 없습니다. 규칙 2번에 의해 매번 다른 방법으로 문을 열어야 하는데 홀수인 경우 무조건 서로 다른 방법으로 문을 열 수 밖에 없으므로 3다음으로 6이 오는 순간 불가능하기 때문입니다.
📔 정답출력
5를 초과하면 Love is open door 아니라면 번갈아가며 정답을 출력합니다.
📕 Code
C++
#include <bits/stdc++.h>
#define ll long long
using namespace std;
ll n;
int way;
int main(){
cin >> n >> way;
if(n > 5) {
cout << "Love is open door";
}
else {
for(int i = 1; i < n; i++){
way = 1 - way;
cout << way << '\n';
}
}
}
Rust
use std::io;
fn main() {
let mut line = String::new();
io::stdin().read_line(&mut line).expect("wrong io");
let door_num = line.trim().parse::<i64>().unwrap();
let mut line = String::new();
io::stdin().read_line(&mut line).expect("wrong io");
let mut way = line.trim().parse::<i64>().unwrap();
if door_num > 5 {
print!("Love is open door");
} else {
for _ in 1..door_num {
way = 1 - way;
println!("{}", way);
}
}
}
*더 나은 내용을 위한 지적, 조언은 언제나 환영합니다.
'Algorithm > Implementation' 카테고리의 다른 글
(C++, Rust) - 백준(BOJ) 23802 : 골뱅이 찍기 - 뒤집힌 ㄱ (0) | 2022.09.12 |
---|---|
(C++, Rust) - 백준(BOJ) 22155 : Простая задача (0) | 2022.09.12 |
(C++) - 백준(BOJ) 17450 : 과자 사기 (0) | 2022.09.08 |
(C++) - 백준(BOJ) 23806 : 골뱅이 찍기 - ㅁ (2) | 2022.09.07 |
(C++, Rust) - 백준(BOJ) 23804 : 골뱅이 찍기 - ㄷ (0) | 2022.09.06 |