백준 57

[백준 14503] - 자바 / 방향 고려해서 좌표 이동하기

방향 주의하기후진할 때는 방향 변경 안하는 거임package solution;import java.util.*;import java.io.*;// The main method must be in a class named "Main".class Solution { static int N, M; static int[][] room; static int result = 0; // 북(0), 동(1), 남(2), 서(3) static final int[] dx= {-1,0,1,0}; static final int[] dy= {0,1,0,-1}; public static void main(String[] args) throws Exception { ..

Algorithm/Baekjoon 2025.04.07

[백준 1167] Java - bfs 여러번 사용

🔵bfs 2번 탐색1. 임의의 정점에서 bfs > 거리 제일 먼게 가장 끝에 있는 정점임 >> 가장 끝에 있는 정점 구하기2. 가장 끝에 있는 정점에서 bfs 탐색 > 두 점 사이 중 가장 긴 거리 구하기 가능!import java.util.*;import java.lang.*;import java.io.*;// The main method must be in a class named "Main".class Main { static int V; // 정점 개수 static int[] dist; // 거리 저장 static ArrayList[] adjList; // 인접노드 저장 static boolean[] visited; // 방문여부 저장 static class N..

Algorithm/Baekjoon 2025.03.01

[백준 1260] Java - dfs, bfs / 가능한 작은 정점 방문하는 경우

import java.util.*;import java.lang.*;import java.io.*;// The main method must be in a class named "Main".class Main { static int N, M, V; //정점, 간선 개수, 시작할 정점 번호 static ArrayList[] adjList; // 인근 정점 static boolean[] visited; //정점 방문 여부 public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); ..

Algorithm/Baekjoon 2025.02.25

[백준 11286] Java - 우선순위 큐 정렬 기준 설정법

import java.util.*;import java.lang.*;import java.io.*;// The main method must be in a class named "Main".class Main { public static void main(String[] args) throws Exception{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int N = Integer.parseInt(br.readLine()); // 연산 개수 입력받기 // 우선순위 큐 정렬 기준 정하기 PriorityQueue pq = new PriorityQueue((o1, ..

Algorithm/Baekjoon 2025.02.24

[백준 11660] Java 구간 합 구하기 5 / 2차원 구간 합 배열

💙2차원 구간 합 배열 저장D[i][j] = D[i][j-1] + D[i-1][j] - D[i-1][j-1] + A[i][j]>문제에서의 답 = D[x2][y2] - D[x1-1][y2] - D[x2][y1-1] + D[x1-1][y1-1] [수도코드]표의 크기 n, 함 구해야 하는 횟수 m 입력받기for(n만큼 반복){    for(n만큼 반복){    표 채워넣을 수 입력받기 > 2차 a 배열에 저장}}for(n만큼 반복){    for(n만큼 반복){   구간 합 배열 저장 D[i][j] = D[i][j-1] + D[i-1][j] - D[i-1][j-1] + A[i][j]}}for(m만큼 반복){x1, y1, x2, y2 입력받기D[x2][y2] - D[x1-1][y2] - D[x2][y1-1] ..

Algorithm/Baekjoon 2025.01.10

[백준 11659] Java 구간 합 구하기 4 / bufferedReader

💙합 배열 만드는 공식배열 A가 있고 합 배열 S인 경우 > S[i] = S[i-1] + A[i] 💙구간 합 구하는 공식i에서 j까지 구간 합 > S[j] - S[i-1]  [수도코드]수의 개수 N, 합을 구해야 하는 횟수 M 저장for(N만큼 반복){합 배열 생성 S[i] = S[i-1] + A[i]}for(M만큼 반복){범위 입력받기구간 합 출력 S[j] - S[i-1]}import java.util.*; // StringTokenizer 사용하기 위해import java.io.*; // BufferedReader, InputStreamReader 사용하기 위해public class Main { public static void main(String[] args) throws IOExcept..

Algorithm/Baekjoon 2025.01.10

[백준 9613] C++ - GCD 최대공약수 구하기

처음에 int sum으로 했더니 틀렸다.⭐입력으로 주어지는 수가 1,000,000이하로 int형말고 long long으로 해야한다.//백준 9613 - GCD 합#include #include using namespace std;// 최대공약수 구하기int gcd(int a, int b){ if(b == 0) return a; return gcd(b, a%b);}int main(){ int t; scanf("%d", &t); // 테스트 케이스 개수 입력 while(t--){ int n; scanf("%d", &n); vector arr; int num; for(int i = 0; i

Algorithm/Baekjoon 2024.07.22

[백준 1966] C++ - 우선순위 큐, pair

운체에서 배운 cpu 스케줄링 같다.우선순위가 주어진 큐!⭐C++에는 아래와 같이 우선순위 큐를 사용할 수 있다. 가장 큰 값이 top#include priority_queueint> pq; // 우선순위 큐//백준 1966 - 프린터 큐#include #include using namespace std;int main(){ int t; scanf("%d", &t); // 테스트 개수 입력 while(t--){ int cnt = 0; // 문서 개수 n, 몇 번째로 인쇄되었는지 궁금한 문제가 현재 큐에서 몇 번째에 놓여 있는지 m int n, m, p; // 우선순위 p scanf("%d %d", &n, &m); queue> q; priority_queue p..

Algorithm/Baekjoon 2024.07.22
728x90