자바 백준 23080번
브론즈 3
https://www.acmicpc.net/problem/23080
23080번: 스키테일 암호
첫 번째 줄에 막대의 굵기 \(K\)가 주어진다. 두 번째 줄에 알파벳 소문자만으로 구성된 암호문 \(S\)가 주어진다.
www.acmicpc.net
문제 보기

분류: 구현, 문자열
문제 풀기
암호의 각 알파벳을 array 에 분리하여 입력 받고 그 array index 에서 막대의 굵기로 나눈 나머지가 0 인 value 를 순서대로 출력한다.
Scanner(System.in) 으로 입력 받은 String 문자열을 toCharArray() 함수를 사용하여 개별적으로 분리하여 저장한다.
막대의 굵기에 따라 성립되는 암호의 각 알파벳은 array 에 저장된 index 에 규칙적으로 출현하는데 그 규칙은 index % k == 0 을 따른다.
따라서 char[] array 로 저장된 문자들을 for loop 을 돌리고 i 를 k 로 나눈 나머지가 0 인 경우 value 에 해당하는 알파벳을 순차적으로 출력한다.
코드 보기
import java.util.Scanner; public class Main { public static void main(String args[]) { Scanner sc = new Scanner(System.in); int k = sc.nextInt(); char[] s = sc.next().toCharArray(); for (int i = 0; i < s.length; i++) { if (i % k == 0) { System.out.print(s[i]); } } } }
'공부하기 > 백준' 카테고리의 다른 글
[Java] 백준 풀기 23348 - 스트릿 코딩 파이터 (0) | 2023.04.04 |
---|---|
[Java] 백준 풀기 21633 - Bank Transfer (0) | 2023.04.03 |
[Java] 백준 풀기 15025 - Judging Moose (0) | 2023.04.01 |
[Java] 백준 풀기 15232 - Rectangles (0) | 2023.03.31 |
[Java] 백준 풀기 21354 - Äpplen och päron (0) | 2023.03.30 |