2023년 1월 1일
08:00 AM
Buffering ...

최근 글 👑

Lv0 C# 프로그래머스 #5 - 점의 위치 구하기, 짝수 홀수 개수, 배열 뒤집기

2023. 8. 7. 21:24ㆍ프로그래머스 C# 코딩테스트
반응형

16. 점의 위치 구하기

문제 설명

  • 사분면은 한 평면을 x축과 y축을 기준으로 나눈 네 부분입니다. 사분면은 아래와 같이 1부터 4까지 번호를매깁니다.

  • x 좌표와 y 좌표가 모두 양수이면 제1사분면에 속합니다.
  • x 좌표가 음수, y 좌표가 양수이면 제2사분면에 속합니다.
  • x 좌표와 y 좌표가 모두 음수이면 제3사분면에 속합니다.
  • x 좌표가 양수, y 좌표가 음수이면 제4사분면에 속합니다.
  • x 좌표 (x, y)를 차례대로 담은 정수 배열 dot이 매개변수로 주어집니다. 좌표 dot이 사분면 중 어디에 속하는지 1, 2, 3, 4 중 하나를 return 하도록 solution 함수를 완성해주세요.

제한사항

  • dot의 길이 = 2
  • dot[0]은 x좌표를, dot[1]은 y좌표를 나타냅니다
  • -500 ≤ dot의 원소 ≤ 500
  • dot의 원소는 0이 아닙니다.

입출력 예시

  • dot이 [2, 4]로 x 좌표와 y 좌표 모두 양수이므로 제 1 사분면에 속합니다. 따라서 1을 return
  • dot이 [-7, 9]로 x 좌표가 음수, y 좌표가 양수이므로 제 2 사분면에 속합니다. 따라서 2를 return

풀이

using System;

public class Solution {
    public int solution(int[] dot) {
        int answer = 0;
        if(dot[0] > 0 && dot[1] > 0) answer = 1;       // x > 0, y > 0
        else if(dot[0] < 0 && dot[1] > 0) answer = 2;  // x < 0, y > 0
        else if(dot[0] < 0 && dot[1] < 0) answer = 3;  // x < 0, y < 0
        else if(dot[0] > 0 && dot[1] < 0) answer = 4;  // x > 0, y < 0
        return answer;
    }
}

 

 

17. 짝수 홀수 개수

 

문제 설명

  • 정수가 담긴 리스트 num_list가 주어질 때, num_list의 원소 중 짝수와 홀수의 개수를 담은 배열을 return 하도록 solution 함수를 완성해보세요.

제한사항

  • 1 ≤ num_list의 길이 ≤ 100 
  • 0 ≤ num_list의 원소 ≤ 1,000

입출력 예시

  • [1, 2, 3, 4, 5]에는 짝수가 2, 4로 두 개, 홀수가 1, 3, 5로 세 개 있습니다.
  • [1, 3, 5, 7]에는 짝수가 없고 홀수가 네 개 있습니다.

풀이

using System;

public class Solution {
    public int[] solution(int[] num_list) {
        int even = 0;
        int odd = 0;
        
        foreach( int num in num_list){ // num_list의 모든 요소를 num 변수에 각각 할당 반복
            if( num % 2 == 0) even += 1;
            else odd += 1;
        }
        return new int[] {even, odd};
    }
}

 

 

18. 배열 뒤집기

 

문제 설명

  • 정수가 들어 있는 배열 num_list가 매개변수로 주어집니다. num_list의 원소의 순서를 거꾸로 뒤집은 배열을 return하도록 solution 함수를 완성해주세요.

제한사항

  • 1 ≤ num_list의 길이 ≤ 1,000 
  • 0 ≤ num_list의 원소 ≤ 1,000

입출력 예시

  • num_list가 [1, 2, 3, 4, 5]이므로 순서를 거꾸로 뒤집은 배열 [5, 4, 3, 2, 1]을 return합니다.
  • num_list가 [1, 1, 1, 1, 1, 2]이므로 순서를 거꾸로 뒤집은 배열 [2, 1, 1, 1, 1, 1]을 return합니다.
  • num_list가 [1, 0, 1, 1, 1, 3, 5]이므로 순서를 거꾸로 뒤집은 배열 [5, 3, 1, 1, 1, 0, 1]을 return합니다.

풀이

using System;

public class Solution {
    public int[] solution(int[] num_list) {
        Array.Reverse(num_list); // Array.Reverse 메서드는 배열내 요소들의 순서를 뒤집는다.
        return num_list;
    }
}

` Array.Reverse( ) 는 반환값이 void 즉, 아무 것도 반환하지 않는다. 따라서 반환은 따로 해주어야 한다. `

 

  • 정답률 높은 순부터 풀이
  • 매일 3 문항 풀이
반응형