극동대학교\AI컴퓨터공학과\JAVA/프로그래머스 코딩 기초 트레이닝

[프로그래머스, LV.0] qr code

sundori 2023. 6. 28. 01:04

목차

    #1 qr code

    문제설명

    두 정수 qr과 문자열 code가 주어질 때, code의 각 인덱스를 q로 나누었을 때 나머지가 r인 위치의 문자를 앞에서부터 순서대로 이어 붙인 문자열을 return 하는 solution 함수를 작성해 주세요.

    제한사항

     

    • 0 ≤ r < q ≤ 20
    • r < code의 길이 ≤ 1,000
    • code는 영소문자로만 이루어져 있습니다.

    입출력 예

    q e code result
    3 1 "qjnwezgrpirldywt" "jerry"
    1 0 "programmers" "programmers"

    입출력 예 설명

     

    #2 코드 및 알고리즘

    class Solution {
        public String solution(int q, int r, String code) {
            String arr = "";
            for(int i = 0; i < code.length(); i++){
                if(i % q == r){
                    arr += code.charAt(i);
                }
            }
            return arr;
        }
    }
    ---------------------------------------
    정확성  테스트
    테스트 1 〉	통과 (11.65ms, 76.3MB)
    테스트 2 〉	통과 (10.81ms, 79.4MB)
    테스트 3 〉	통과 (13.16ms, 79.5MB)
    테스트 4 〉	통과 (10.74ms, 77.5MB)
    테스트 5 〉	통과 (12.75ms, 68.4MB)
    테스트 6 〉	통과 (12.96ms, 72.3MB)
    테스트 7 〉	통과 (12.21ms, 77MB)
    테스트 8 〉	통과 (14.72ms, 82.7MB)
    테스트 9 〉	통과 (12.64ms, 77.9MB)
    테스트 10 〉	통과 (12.73ms, 74.5MB)
    테스트 11 〉	통과 (15.18ms, 76.6MB)
    테스트 12 〉	통과 (11.60ms, 76.1MB)
    테스트 13 〉	통과 (14.27ms, 85.9MB)
    테스트 14 〉	통과 (13.10ms, 80.1MB)
    테스트 15 〉	통과 (13.75ms, 77.8MB)
    테스트 16 〉	통과 (12.82ms, 76.6MB)
    테스트 17 〉	통과 (13.22ms, 88.8MB)
    테스트 18 〉	통과 (10.67ms, 74.5MB)
    테스트 19 〉	통과 (18.92ms, 76.5MB)
    테스트 20 〉	통과 (12.41ms, 71.9MB)

    풀이:

    • for문을 통하여 주어진 문자열 code의 길이만큼 반복을 한다.
    • if 조건문을 통하여 code[i] 원소의 인덱스 번호 i를 q로 나누었을 때의 나머지가 r이라면 
      arr에 이어붙인다.