250x250
syk531
하루
syk531
전체 방문자
오늘
어제
  • 분류 전체보기 (166)
    • 개발 (166)
      • java (11)
      • kotlin (7)
      • spring, spring boot (35)
      • Javascript (4)
      • Tyhmeleaf (2)
      • Kafka (17)
      • Docker (8)
      • Kubernetes (3)
      • Elastic Stack (4)
      • react native (3)
      • Web (4)
      • GIS (3)
      • 리눅스 (16)
      • Windows (2)
      • 네트워크 (2)
      • 안드로이드앱 (5)
      • git (2)
      • Tool (15)
      • 프로젝트 (7)
      • 백준알고리즘 (14)
      • DB (2)

인기 글

최근 글

블로그 메뉴

    공지사항

    태그

    • 티스토리챌린지
    • 오블완
    • 뉴스앱

    최근 댓글

    티스토리

    hELLO · Designed By 정상우.
    syk531

    하루

    5597번_과제 안 내신 분..?_java
    개발/백준알고리즘

    5597번_과제 안 내신 분..?_java

    2022. 12. 8. 16:42
    728x90
    반응형

    1. 문제

    2. 접근방식

    처음에는 LinkedList를 이용(ArrayList 보다 데이터 추가, 삭제가 빨라서) 해서 1~30까지의 값을 저장한 후 입력값들을 제거한 후 정렬을 해서 출력을 하게 개발을 하였는데 이유는 모르겠지만 틀렸다고 통과를 하지 못해서 배열을 이용하는 방법으로 수정하였다.

    배열에 1~30까지 boolean false 값(default값)으로 세팅한 후 입력값들을 true로 변경후 false로 되있는 배열의 값들을 출력하게 수정해서 제출하니 통과하였다.

    3. 코드

    1) 배열 사용

    import java.io.BufferedReader;
    import java.io.BufferedWriter;
    import java.io.InputStreamReader;
    import java.io.OutputStreamWriter;
    
    public class Main {
    	public static void main(String[] args) {
    		try {
    			BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
    			BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(System.out));
    			
    			boolean num[] = new boolean[31];
    			
    			for(int i=1; i<=28; i++) {
    				int index = Integer.parseInt(reader.readLine());
    				num[index] = true;
    			}
    			
    			for(int i=1; i<=30; i++) {
    				if(!num[i]) {
    					writer.append(String.valueOf(i) + "\n");
    				}
    			}
    			
    			writer.flush();
    			writer.close();
    		} catch (Exception e) {
    			
    		}
    	}
    }

    2) LinkedList 사용(오답)

    import java.io.BufferedReader;
    import java.io.BufferedWriter;
    import java.io.InputStreamReader;
    import java.io.OutputStreamWriter;
    import java.util.Collections;
    import java.util.LinkedList;
    
    public class Main {
    	public static void main(String[] args) {
    		try {
    			BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
    			BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(System.out));
    			
    			LinkedList<String> list = new LinkedList<String>();
    			for(int i=1; i<=30; i++) {
    				list.add(String.valueOf(i));
    			}
    			
    			for(int i=1; i<=28; i++) {
    				list.remove(reader.readLine());
    			}
    			
    			Collections.sort(list);
    			for(String str : list) {
    				writer.append(str + "\n");
    			}
    			
    			writer.flush();
    			writer.close();
    		} catch (Exception e) {
    			
    		}
    	}
    }

     

    728x90
    반응형
    저작자표시 (새창열림)

    '개발 > 백준알고리즘' 카테고리의 다른 글

    15726번_이칙연산_java  (0) 2023.08.06
    2563번_색종이_java  (0) 2022.12.11
    1912번_연속합_java  (0) 2022.12.08
    25305번_커트라인_java  (0) 2022.12.08
    25304번_영수증_java  (0) 2022.12.08
      '개발/백준알고리즘' 카테고리의 다른 글
      • 15726번_이칙연산_java
      • 2563번_색종이_java
      • 1912번_연속합_java
      • 25305번_커트라인_java
      syk531
      syk531
      기억을 위해 기록을.

      티스토리툴바