[백준] 15649.N과 M (1)/Java - Silver3

2024. 9. 29. 17:40·Coding Test/Algorithms

❓문제

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

📌유형

Backtracking

✍🏻풀이

방문한 숫자가 아니라면 true로 바꾼 후 result에 삽입.
result의 길이가 m과 같아지면 출력 후 return하고 result에서 제일 마지막 숫자를 제거.
이를 n까지 반복.

💻코드

import java.util.*;
import java.io.*;

public class Main {

    static int n;
    static int m;
    static boolean[] visited;
    static ArrayList<Integer> result = new ArrayList<>();
    static BufferedReader r = new BufferedReader(new InputStreamReader(System.in)); // 입력

    static void backtracking() {
        if (result.size() == m) {
            for (int i = 0; i < m; i++) System.out.print(String.valueOf(result.get(i)) + " ");
            System.out.println();
            return;
        }

        for (int i = 1; i <= n; i++) {
            if (!visited[i]) {
                visited[i] = true;
                result.add(i);
                backtracking();
                visited[i] = false;
                result.remove(result.size()-1);
            }
        }
    }

    public static void main(String[] args) throws IOException {

        StringTokenizer st = new StringTokenizer(r.readLine());

        n = Integer.parseInt(st.nextToken());
        m = Integer.parseInt(st.nextToken());

        visited = new boolean[n + 1];
        Arrays.fill(visited, false);

        backtracking();
    }
}
저작자표시 비영리 변경금지 (새창열림)

'Coding Test > Algorithms' 카테고리의 다른 글

[프로그래머스] 완주하지 못한 선수/Java - Lv.1  (0) 2024.10.06
[백준] 14889.스타트와 링크/Java - Silver1  (1) 2024.09.29
[프로그래머스] 주식가격/Java - Lv.2  (0) 2024.09.29
[백준] 28278. 스택 2/Java - Silver4  (0) 2024.09.28
[프로그래머스] 순위/Python - Lv.3  (1) 2024.09.28
'Coding Test/Algorithms' 카테고리의 다른 글
  • [프로그래머스] 완주하지 못한 선수/Java - Lv.1
  • [백준] 14889.스타트와 링크/Java - Silver1
  • [프로그래머스] 주식가격/Java - Lv.2
  • [백준] 28278. 스택 2/Java - Silver4
The Engineer, Lucy
The Engineer, Lucy
  • The Engineer, Lucy
    Growing up for My Future💕
    The Engineer, Lucy
    • Instagram
    • GitHub
  • 전체
    오늘
    어제
    • 분류 전체보기 (171) N
      • Linux (26)
      • Infra (9)
      • Cloud (25)
        • AWS (2)
        • GCP (3)
        • Docker (4)
        • Kubernetes (14)
        • IaC (2)
      • NGINX (1)
      • DevOps (3)
      • Computer Science (17)
        • Data Structure (0)
        • Algorithms (1)
        • Operating System (3)
        • Network (11)
        • Database System (2)
      • Coding Test (85) N
        • Algorithms (77) N
        • SQL (7)
      • ETC (5)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 공지사항

  • 링크

    • Lucy's Instagram
    • Lucy's GitHub
  • 인기 글

  • 태그

    Baekjoon
    셸 스크립트
    리눅스마스터
    오블완
    Linux
    K8s
    다이나믹 프로그래밍
    쿠버네티스
    programmers
    리눅스
    network
    도커
    너비우선탐색
    Java
    프로그래머스
    티스토리챌린지
    docker
    bfs
    Shell Script
    네트워크 기초 지식
    코딩테스트 공부
    dfs
    cs 기초 지식 정리
    네트워크
    자바
    리눅스마스터 2급
    쉘 스크립트
    백준
    Kubernetes
    Shell
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
The Engineer, Lucy
[백준] 15649.N과 M (1)/Java - Silver3
상단으로

티스토리툴바