반응형
https://www.acmicpc.net/problem/23080
23080번: 스키테일 암호
첫 번째 줄에 막대의 굵기 \(K\)가 주어진다. 두 번째 줄에 알파벳 소문자만으로 구성된 암호문 \(S\)가 주어진다.
www.acmicpc.net
문제에서 막대의 두께는, 곧 출력해야 하는 문자의 간격이다.
따라서 첫 번째 문자를 시작으로, 막대 두께(=간격)만큼 떨어진 문자를 모두 출력해주면 된다.
1. 막대 굵기 K와 문자열 str을 각각 입력받는다.
int k = 0;
cin >> k;
string str = "";
cin >> str;
2. for문을 돌면서, 문자열의 0번째 문자를 시작으로 k 간격만큼 에 있는 문자를 출력해준다.
for (int i = 0; i < str.size(); i = i+k) {
cout << str[i];
}
[전체 코드]
#include <iostream>
using namespace std;
int main() {
int k = 0;
cin >> k;
string str = "";
cin >> str;
for (int i = 0; i < str.size(); i = i+k) {
cout << str[i];
}
}
반응형
'Online-Judge > Baekjoon' 카테고리의 다른 글
[Baekjoon] C++ 11944번 NN (0) | 2022.01.09 |
---|---|
[Baekjoon] C++ 11170번 0의 개수 (0) | 2022.01.09 |
[Baekjoon] C++ 10250번 ACM 호텔 (0) | 2021.06.15 |
[Baekjoon] C++ 11721번 열 개씩 끊어 출력하기 (0) | 2021.06.13 |
[Baekjoon] C++ 1008번 A/B (0) | 2021.06.07 |
댓글