[SWEA / Java] 2071. 평균값 구하기 + 2072. 홀수만 더하기

이하얀·2024년 5월 12일
0

🧢 SWEA

목록 보기
6/10
post-thumbnail

💡 Info

  • 난이도: D2
  • 시간 제한: 10개의 테스트 케이스를 합쳐서 30초
  • 메모리 제한: 힙, 정적 메모리 합쳐서 256MB 이내, 스택 메모리 1MB 이내



🐥 2071. 평균값 구하기


💭 문제 이해

  • 10개의 수를 입력받고, 그 수들의 평균 값 계산(반올림)

📥입력 조건

  • 가장 첫 줄에는 테스트 케이스의 개수 T가 주어지고, 그 아래로 각 테스트 케이스가 주어진다.
  • 각 테스트 케이스의 첫 번째 줄에는 10개의 수가 주어진다.
3
3 17 1 39 8 41 2 32 99 2
22 8 5 123 7 2 63 7 3 46
6 63 2 3 58 76 21 33 8 1  

📤출력 조건

  • 출력의 각 줄은 '#t'로 시작하고, 공백을 한 칸 둔 다음 정답을 출력한다. (t는 테스트 케이스의 번호를 의미하며 1부터 시작한다.)
#1 24
#2 29
#3 27


💭 생각한 알고리즘

실제 풀이 시간 :10분

  • 테스트 케이스 입력받기
  • i = 0부터 10사이에서 num을 입력받고, sum에 계속 더하기
  • 출력 시에, Math.round를 이용해 평균값 계산 및 반올림 계산하기(이때, 10개의 수를 입력받으니 길이는 10.0으로 고정!)
import java.util.*;
 
class Solution
{
    public static void main(String args[]) throws Exception
    {
        Scanner sc = new Scanner(System.in);
        int T;
        T=sc.nextInt();
 
 
        for(int test_case = 1; test_case <= T; test_case++)
        {
             
            int sum = 0;
 
            for(int i=10; i>0; i--) {
                int num = sc.nextInt();
                sum += num;
            }
            System.out.println("#" + test_case + " " + Math.round(sum/10.0));
        }
    }
}







🐥 2072. 홀수만 더하기


💭 문제 이해

  • 10개의 수를 입력받고, 홀수만 더하기

📥입력 조건

  • 가장 첫 줄에는 테스트 케이스의 개수 T가 주어지고, 그 아래로 각 테스트 케이스가 주어진다.
  • 각 테스트 케이스의 첫 번째 줄에는 10개의 수가 주어진다.
3
3 17 1 39 8 41 2 32 99 2
22 8 5 123 7 2 63 7 3 46
6 63 2 3 58 76 21 33 8 1 

📤출력 조건

  • 출력의 각 줄은 '#t'로 시작하고, 공백을 한 칸 둔 다음 정답을 출력한다. (t는 테스트 케이스의 번호를 의미하며 1부터 시작한다.)
#1 200
#2 208
#3 121


💭 생각한 알고리즘

실제 풀이 시간 : 12분

  • 테스트 케이스 입력받기
  • i =0부터 9까지의 10개 케이스를 2로 나눈 나머지가 1인 경우 홀수이므로 이에 해당하는 숫자만 num에 추가되고, sum으로 합을 구하도록 구성하기
import java.util.*;
 
class Solution
{
    public static void main(String args[]) throws Exception
    {
        Scanner sc = new Scanner(System.in);
        int T = sc.nextInt();
 
        for(int test_case = 1; test_case <= T; test_case++)
        {
            int sum = 0;
            for(int i=0; i<10; i++) {
                int num = sc.nextInt();
                if(num%2 == 1)
                    sum += num;
                }
            System.out.println("#" + test_case + " " + sum);
        }
    }
}


profile
언젠가 내 코드로 세상에 기여할 수 있도록, BE 개발 기록 노트☘️

0개의 댓글