반응형
https://www.acmicpc.net/problem/10205
10205번: 헤라클레스와 히드라
헤라클레스는 그리스 신화의 유명한 비극적인 영웅이다. 그는 제우스의 사생아로 태어났는데, 이때문에 제우스의 아내 헤라는 그를 매우 싫어했다. 그는 매우 강한 힘과 높은 지식을 가졌지만,
www.acmicpc.net
간단 구현 문제였습니다.
📕 풀이방법
📔 입력 및 초기화
test case 수, 머리 수, 행동 정보에 대한 변수 선언 후 입력받습니다.
📔 풀이과정
행동 정보에 대해 1차원 for loop를 수행합니다.
행동이 c라면 잘린머리와 거기서 자라는 2개의 머리가 되므로 1을 추가해줍니다.
b라면 자른 머리가 더 이상 나지 않으므로 1을 빼줍니다.
📔 정답출력
머리의 개수 head를 형식에 맡게 출력합니다.
📕 Code
📔 C++
#include <bits/stdc++.h>
using namespace std;
int k, head;
string behaving;
int main(){
cin >> k;
for(int i = 1; i <= k; i++){
cin >> head;
cin >> behaving;
for(auto b : behaving) {
if(b == 'c') head++;
else head--;
}
cout << "Data Set " << i << ":\n" << head << "\n\n";
}
}
📔 Rust
use std::io;
fn main(){
let mut line = String::new();
io::stdin().read_line(&mut line).expect("wrong io");
let test_case = line.trim().parse::<i64>().unwrap();
for i in 1..test_case+1 {
let mut line = String::new();
io::stdin().read_line(&mut line).expect("wrong io");
let mut head = line.trim().parse::<i64>().unwrap();
let mut behaving = String::new();
io::stdin().read_line(&mut behaving).expect("wrong io");
behaving = behaving.trim().to_string();
for i in behaving.chars() {
if i == 'c' {
head += 1;
}
else {
head -= 1;
}
}
print!("Data Set {}:\n{}\n\n", i, head);
}
}
*더 나은 내용을 위한 지적, 조언은 언제나 환영합니다.
'Algorithm > Implementation' 카테고리의 다른 글
(C++) - 백준(BOJ) 11367 : Report Card Time (0) | 2022.10.02 |
---|---|
(C++, Rust) - 백준(BOJ) 23080 : 스키테일 암호 (0) | 2022.09.30 |
(C++, Rust) - 백준(BOJ) 25640 : MBTI (0) | 2022.09.27 |
(C++, Rust) - 백준(BOJ) 25628 : 햄버거 만들기 (1) | 2022.09.26 |
(C++, Rust) - 백준(BOJ) 24263 : 알고리즘 수업 - 알고리즘의 수행 시간 2 (0) | 2022.09.24 |