RUST

[ 백준 | RUST ] - 10926번 :: ??!

Suil_bear 2023. 9. 29. 23:35
728x90
문제 : 준하는 사이트에 회원가입을 하다가 joonas라는 아이디가 이미 존재하는 것을 보고 놀랐다.
준하는 놀람을 ??!로 표현한다.
준하가 가입하려고 하는 사이트에 이미 존재하는 아이디가 주어졌을 때, 놀람을 표현하는 프로그램을 작성하시오.

이 문제에는 두 가지 풀이 방법을 제시할 것이다.

입력: 				출력 :
joonas		->		joonas??!
baekjoon	->		baekjoon??!

입력과 출력을 보면 단순히 ??!만 붙여서 출력을 하면 된다고 생각을 하고 간단하게 만들 수 있다.

use std::io;

fn main() {
    let mut input_id = String::new();

    io::stdin().read_line(&mut input_id).unwrap();

    print!("{}??!", input_id.trim());
}

아이디를 입력받을 문자열 변수를 하나 만들어주고 변수를 입력받기 위해서 io 라이브러리를 사용해 준다.

trim()을 사용해서 공백을 제거해 주고(공백을 제거를 안 하면 출력이 붙여서 안된다.)??! 을 추가해 주면 간단하게 문제를 풀 수가 있다.

use std::io;

fn main() {
    let mut input_id = String::new();

    io::stdin().read_line(&mut input_id).unwrap();

    if (input_id.trim() == "joonas") {
        print!("joonas??!");
    } else if (input_id.trim() == "baekjoon") {
        print!("baekjoon??!");
    } else {
        return;
    }
}

2번째 풀이는 위에 방법에서는 생각을 해보시면 입력을 받은 모든 값에 대해서 출력이 된다는 것에 의문점이 들것이다.

그래서 if 문을 사용하여 판별을 추가해주면 된다. if 문에 변수에 trim()을 사용하여 공백을 제거해줘야지 두 개의 문자열을 비교할 수 있게 된다. (안 하면 공백 공간 때문에 다르다고 판단을 한다) 이 방법을 사용하면 특정 값에 대한 출력을 사용할 수 있다.