Ethan(기린)
그린기린그림 일기
Ethan(기린)
전체 방문자
오늘
어제
  • 전체보기 (43)
    • Language (4)
      • JavaScript (4)
    • Web (0)
      • HTML (0)
    • Problem Solving (29)
      • BOJ (18)
      • 프로그래머스 (10)
    • Computer Science (3)
      • Algorithm & Data Structure (2)
      • Network (1)
    • Error Log (4)
    • Config (1)
      • Test (1)
    • Thinking (2)
      • Retrospect (2)
      • Essay (0)
    • Book (0)

인기 글

최근 글

최근 댓글

태그

  • 알고리즘
  • boj
  • Problem Solving
  • 객체 지향 프로그래밍
  • 프로그래머스
  • 백준
  • JavaScript
  • Lv. 2
  • OOP
  • Java
  • Java의 정석 3rd Edition
  • Object-oriented programming
  • Lv. 1
  • 문자열
  • 완전탐색

티스토리

hELLO · Designed By 정상우.
Ethan(기린)

그린기린그림 일기

[백준 3052번/1차원 배열] 나머지 - Java
Problem Solving/BOJ

[백준 3052번/1차원 배열] 나머지 - Java

2021. 3. 15. 15:14

www.acmicpc.net/problem/3052

 

3052번: 나머지

각 수를 42로 나눈 나머지는 39, 40, 41, 0, 1, 2, 40, 41, 0, 1이다. 서로 다른 값은 6개가 있다.

www.acmicpc.net

 

내 코드

import java.util.Scanner;

class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int[] num = new int[10];
		int count = 0;
		for(int i = 0;i < 10; i++) { // 10개 숫자 입력 받고 42로 나눈다.
			num[i] = sc.nextInt() % 42;
		}
		for(int i = 0; i < 10; i++) { // 10개의 중복된 값이 있는지 확인한다.
			int tmp = 0;
			for(int j = i+1; j < 10; j++) {	// i와 j(i+1)을 비교하여 같으면 tmp를 증가시킨다. 			
				if(num[i]==num[j]) {
					tmp++;
				}
			}
			if(tmp == 0) { // i와 j가 값이 같지 않은 경우 count를 더해준다.
				count++;
			}
		}
		sc.close();
		System.out.println(count);
	}
}

자바 Collection 중 하나인 HashSet을 이용하면 보다 쉽게 해결 할 수 있다고 하지만 아직 Collection은 학습한 내용이 아니기 때문에 우선 학습한 내용으로 해결해볼 수 있도록 Scanner의 입력 방법과 배열로 해결하고자 했다.

입력 값이 10개로 정해져있어서 배열 길이가 10인 int형 배열을 생성하고, 서로 다른 값이 몇 개인지 확인하기 위해 count를 0으로 초기화 했다. 첫 번째 for문에서는 입력 받은 숫자에 대해서 나머지 연산을 하고 그것을 배열의 각 인덱스에 저장하고 두 번째 for문에서는 이 중에서 중복된 값을 체크하기 위해 배열을 i번째 인덱스와 j(i+1)번째 인덱스를 비교하여 같은 값은 제외시키고 다른 경우 count의 값을 증가시켜서 서로 다른 값이 몇 개인지 확인할 수 있도록 했다.

저작자표시 비영리 (새창열림)

'Problem Solving > BOJ' 카테고리의 다른 글

[백준 8958번/1차원 배열] OX퀴즈 - Java  (0) 2021.03.15
[백준 1546번/1차원 배열] 평균 - Java  (0) 2021.03.15
[백준 2577번/1차원 배열] 숫자의 개수 - Java  (0) 2021.03.15
[백준 2562번/1차원 배열] 최댓값 - Java  (0) 2021.03.15
[백준 10818번/1차원 배열] 최소, 최대 - Java  (0) 2021.03.15
    'Problem Solving/BOJ' 카테고리의 다른 글
    • [백준 8958번/1차원 배열] OX퀴즈 - Java
    • [백준 1546번/1차원 배열] 평균 - Java
    • [백준 2577번/1차원 배열] 숫자의 개수 - Java
    • [백준 2562번/1차원 배열] 최댓값 - Java
    Ethan(기린)
    Ethan(기린)

    티스토리툴바