Park DJ
dj0998
Park DJ
전체 방문자
오늘
어제
  • 분류 전체보기 (363)
    • 백준 (363)

공지사항

인기 글

태그

  • 백준 6550
  • 백준 7567
  • 백준 1747
  • 백준 2467
  • 백준 1531
  • 백준 12605
  • 백준 1064
  • 백준 2591
  • 백준 15961
  • 백준 24039
  • 백준 3049
  • 백준 15655
  • 백준 10709
  • 자바
  • 백준 3135
  • 백준 2343
  • 백준 8892
  • 백준 15312
  • 백준 14582
  • Java
  • 백준 7662
  • 백준 2225
  • 백준 12871
  • 백준 4659
  • 백준 16194
  • 백준 1495
  • 백준 16926
  • 백준
  • 백준 1914
  • 백준 1011
hELLO · Designed By 정상우.
Park DJ

dj0998

백준 2776 암기왕(Java)
백준

백준 2776 암기왕(Java)

2023. 1. 30. 02:11

https://www.acmicpc.net/problem/2776

 

2776번: 암기왕

연종이는 엄청난 기억력을 가지고 있다. 그래서 하루 동안 본 정수들을 모두 기억 할 수 있다. 하지만 이를 믿을 수 없는 동규는 그의 기억력을 시험해 보기로 한다. 동규는 연종을 따라 다니며,

www.acmicpc.net


 

해석 및 팁

 


 

이 문제를 풀 때 ArrayList나 배열을 사용하면 시간초과가 발생하므로 HashSet을 사용해주어야 합니다. 먼저 처음 주어진 수를 set에 저장한 후 그다음 주어지는 수가 존재하는지 확인하여 존재하면 StringBuilder에 1을 더하고 존재하지 않으면 0을 더하면 됩니다.

 


 

Java 코드

 


import java.util.Scanner;
import java.util.HashSet;

public class Main {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    StringBuilder sb = new StringBuilder();

    int t = sc.nextInt();
  
    for(int i = 0; i < t; i++) {
      
      HashSet<Integer> set = new HashSet<>();
      
      int n = sc.nextInt();
      
      for(int j = 0; j < n; j++) {
        set.add(sc.nextInt());
      }
      
      int m = sc.nextInt();
      
      for(int j = 0; j < m; j++) {
        int num = sc.nextInt();
        if(set.contains(num)) sb.append(1+"\n");
        else sb.append(0+"\n");
      }
      
    }

    System.out.println(sb);
  }
}

'백준' 카테고리의 다른 글

백준 9507 Generations of Tribbles(Java)  (0) 2023.01.30
백준 2491 수열(Java)  (1) 2023.01.30
백준 1940 주몽(Java)  (0) 2023.01.30
백준 2847 게임을 만든 동준이(Java)  (0) 2023.01.29
백준 1015 수열 정렬(Java)  (1) 2023.01.29
    '백준' 카테고리의 다른 글
    • 백준 9507 Generations of Tribbles(Java)
    • 백준 2491 수열(Java)
    • 백준 1940 주몽(Java)
    • 백준 2847 게임을 만든 동준이(Java)
    Park DJ
    Park DJ

    티스토리툴바