- 문제
https://www.acmicpc.net/problem/1855
- 코드
#include <iostream>
#include <algorithm>
#include <cstring>
#include <string>
#include <stdio.h>
#include <queue>
#include <vector>
#include <unordered_map>
#include <set>
#include <map>
#include<cmath>
#include<stack>
#include<deque>
#define LL long long
using namespace std;
char arr[20][20];
int main() {
ios::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
int b = 0;
string s;
cin >> b;
cin >> s;
int cnt = 0;
int a = s.length() / b;
for (int i = 0; i < a; i++) {
for (int j = 0; j < b; j++) {
if (i % 2 == 0) {
arr[i][j] = s[cnt];
}
else {
arr[i][b - j - 1] = s[cnt];
}
cnt++;
}
}
for (int j = 0; j < b; j++) {
for (int i = 0; i < a; i++) {
cout << arr[i][j];
}
}
return 0;
}
- 문제 해설
암호화된 문자를 위치되어야할 곳으로 순서대로 넣어주면 된다. 행의 인덱스가 짝수일 경우 왼쪽에서 오른쪽으로, 홀수인 경우 오른쪽에서 왼쪽으로 넣어주고 출력은 왼쪽부터 위에서 아래로 해주면 된다.
'Koala - 14기 > 코딩테스트 준비 스터디' 카테고리의 다른 글
[백준 14888번] 연산자 끼워넣기 (0) | 2024.03.17 |
---|---|
[백준/python] 호텔 방 번호 (0) | 2024.03.17 |
[백준 2116 cpp] 주사위 쌓기 (0) | 2024.03.17 |
[백준/C++] 14916 거스름돈 (0) | 2024.03.17 |
[백준/Python] 16987 - 계란으로 계란치기 (0) | 2024.03.14 |