mun dev

[COS PRO 1급] 1-5 소용돌이 수 자바(Java) 본문

알고리즘/COS PRO 1급

[COS PRO 1급] 1-5 소용돌이 수 자바(Java)

mndev 2023. 11. 24. 16:45

문제링크

 

구름HOME

구름은 클라우드 기술을 이용하여 누구나 코딩을 배우고, 실력을 평가하고, 소프트웨어를 개발할 수 있는 클라우드 소프트웨어 생태계입니다.

www.goorm.io

 

문제유형

solution 함수 작성

 

문제

import java.util.*;
 
class Main {
    public int solution(int n) {
        int answer = 0;
        // 소스 코드를 입력하세요.
      return answer;
    }
    
    public static void main(String[] args) {        
    	Main sol = new Main();
        int n1 = 3;
        int ret1 = sol.solution(n1);
 
        
        System.out.println("solution 함수의 반환 값은 " + ret1 + " 입니다.");
        
        int n2 = 2;
        int ret2 = sol.solution(n2);
 
        System.out.println("solution 함수의 반환 값은 " + ret2 + " 입니다.");
    }
}

 

문제 풀이

class Main {
    public int solution(int n) {
        int arr[] = new int[n * n];

        for (int i = 0; i < n * n; i++) {
            arr[i] = i + 1;
        }

        int idx = 0;
        int answer = 0;

        while (idx < n * n) {
            answer += arr[idx];
            if (n % 2 == 0) {
                idx += n;
            } else {
                idx += (n + 1);
            }
        }
        return answer;
    }

    // 아래는 테스트케이스 출력을 해보기 위한 main 메소드입니다.
    public static void main(String[] args) {
        Main sol = new Main();
        int n1 = 3;
        int ret1 = sol.solution(n1);
        // [실행] 버튼을 누르면 출력 값을 볼 수 있습니다.
        System.out.println("solution 메소드의 반환 값은 " + ret1 + " 입니다.");

        int n2 = 2;
        int ret2 = sol.solution(n2);
        // [실행] 버튼을 누르면 출력 값을 볼 수 있습니다.
        System.out.println("solution 메소드의 반환 값은 " + ret2 + " 입니다.");
    }
}