본문 바로가기

프로그래머스(Java)/Level 0

[프로그래머스] qr code

728x90

코드 힌트

  1. 반복문 사용:
    • 문자열 code의 각 문자를 순회하는 반복문을 사용합니다.
    • 문자열의 길이만큼 반복문을 돌면서 각 인덱스를 확인합니다.
  2. 조건 확인:
    • 각 인덱스를 q로 나누었을 때 나머지가 r인지를 확인합니다.
    • 나머지가 r인 경우 해당 인덱스의 문자를 선택합니다.
  3. 문자 추가:
    • 조건에 맞는 문자를 결과 문자열에 추가합니다.
    • 조건에 맞는 문자를 효율적으로 추가하기 위해 StringBuilder를 사용할 수 있습니다.

 


정답은 더보기 클릭

 

더보기
class Solution {
    public String solution(int q, int r, String code) {
        StringBuilder result = new StringBuilder(); // 결과 문자열을 저장할 StringBuilder 객체 생성
        
        // 문자열의 각 인덱스에 대해 조건을 확인
        for (int i = 0; i < code.length(); i++) {
            if (i % q == r) { // 인덱스를 q로 나눈 나머지가 r인지 확인
                result.append(code.charAt(i)); // 조건에 맞는 문자를 StringBuilder에 추가
            }
        }
        
        return result.toString(); // 최종 결과를 문자열로 변환하여 반환
    }
}

 

조건문을 쓰지 않고 풀기

class Solution {
    public String solution(int q, int r, String code) {
        // 결과 문자열을 저장할 StringBuilder 객체 생성
        StringBuilder sb = new StringBuilder();
        
        // 시작 인덱스는 r, 그 이후 q 간격으로 문자 선택
        for (int i = r; i < code.length(); i += q) {
            // 현재 인덱스의 문자를 StringBuilder에 추가
            sb.append(code.charAt(i));
        }
        
        // 최종 결과를 문자열로 변환하여 반환
        return sb.toString();
    }
}
728x90