Menu
Coddy logo textTech

모든 할 일 보기

Coddy Rust 여정의 Logic & Flow 섹션에 포함된 레슨 — 66개 중 17번째.

challenge icon

챌린지

쉬움

두 개의 입력을 받게 됩니다: 첫 번째는 쉼표로 구분된 기존 작업 목록이고, 두 번째는 조회할 작업 번호(1부터 시작하는 인덱스)입니다. 두 입력을 모두 읽고, 작업들로 벡터를 생성한 다음, 요청된 작업을 강조하여 모든 작업을 번호와 함께 표시하세요.

요구 사항:

  • 쉼표로 구분된 작업 설명이 포함된 첫 번째 입력을 읽습니다 (예: Buy groceries,Call dentist,Finish homework)
  • 문자열을 쉼표로 분리하여 개별 작업을 가져옵니다
  • 벡터를 생성하고 각 작업을 추가합니다
  • 두 번째 입력을 읽고 정수로 변환합니다 (강조할 작업 번호, 1부터 시작하는 인덱스 사용)
  • 전체 작업 수를 다음 형식으로 출력합니다: Total tasks: X
  • 벡터를 반복하며 각 작업을 번호(1부터 시작)와 함께 출력합니다
  • 요청된 작업 번호의 경우, 다음 형식으로 출력합니다: [X] [task description] (selected)
  • 그 외의 모든 작업은 다음 형식으로 출력합니다: [X] [task description]

입력:

  • 첫 번째 줄: 쉼표로 구분된 작업 설명 (예: Buy groceries,Call dentist,Finish homework)
  • 두 번째 줄: 강조할 작업 번호를 나타내는 정수 (1부터 시작하는 인덱스)

출력:

  • 첫 번째 줄: Total tasks: X (여기서 X는 전체 작업 수)
  • 다음 줄들: 각 작업을 [X] [task description] 형식으로 출력
  • 선택된 작업에는 (selected)를 뒤에 추가해야 합니다

직접 해보기

use std::io::{self, BufRead};

fn main() {
    let stdin = io::stdin();
    let mut lines = stdin.lock().lines();
    
    // 쉼표로 구분된 작업들을 읽습니다
    let tasks_input = lines.next().unwrap().unwrap();
    
    // 강조할 작업 번호를 읽습니다
    let task_number: usize = lines.next().unwrap().unwrap().trim().parse().unwrap();
    
    // TODO: 아래에 코드를 작성하세요
    // tasks_input을 쉼표로 분리하고 벡터를 생성합니다
    // 전체 작업 수를 출력합니다
    // 작업들을 반복하며 각 작업과 번호를 출력합니다
    // " (selected)"를 추가하여 선택된 작업을 강조합니다
    
}

Logic & Flow의 모든 레슨