[백준] 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
  • 전체
    오늘
    어제
    • 분류 전체보기 (190)
      • Linux (26)
      • Infra (9)
      • Cloud (30)
        • AWS (3)
        • GCP (4)
        • Docker (4)
        • Kubernetes (14)
        • IaC (5)
      • NGINX (1)
      • DevOps (3)
      • Computer Science (17)
        • Data Structure (0)
        • Algorithms (1)
        • Operating System (3)
        • Network (11)
        • Database System (2)
      • Coding Test (97)
        • Algorithms (89)
        • SQL (7)
      • ETC (7)
  • 블로그 메뉴

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

  • 링크

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

  • 태그

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

  • 최근 글

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

티스토리툴바