본문 바로가기

전체 글623

[자바] SWEA 1873 : 상호의 배틀필드 (D3) [자바] SWEA 1873 : 상호의 배틀필드 (D3)SWEA 1873 : 상호의 배틀필드풀이방향성 생각단순 구현 문제문자열 관리 잘 해주기.문제 조건에 맞춰서 포탄을 쏘는 행동에는 벽 유무를, 이동하는 경우에는 방향 전환 + 이동 구현해주기 전체코드import java.io.*;import java.util.*;public class Solution { static int TC,H,W,C,dire; static char[][] arr; static char[] cmds; static int[] cur; static int[][] dires = {{1,0},{0,1},{-1,0},{0,-1}}; static boolean inside(int x, int y) { .. 2025. 3. 9.
[파이썬, 자바] 백준 1506 : 경찰서 (플레5) [파이썬, 자바] 백준 1506 : 경찰서 (플레5)https://www.acmicpc.net/problem/1506풀이방향성 생각간선 정보가 인접행렬로 나와있다.N이 작아서 인접 리스트를 구현하는 대신 그냥 인접행렬 사용하기문제를 해석하면 SCC가 몇 개나 있는지 확인하는 문제이다.각 SCC 내에서 가장 작은 건설 cost를 구해서 더해주면 되는 문제 파이썬from collections import dequeimport sysinput = lambda : sys.stdin.readline().strip()N = int(input())arr = list(map(int,input().split()))G = [list(map(int,input())) for _ in range(N)]# SCC 방문 / 카운팅.. 2025. 3. 9.
[파이썬, 자바] 백준 4196 : 도미노 (플레4) [파이썬, 자바] 백준 4196 : 도미노 (플레4)https://www.acmicpc.net/problem/4196풀이방향성 생각타잔 알고리즘으로 얻은 SCC는 위상정렬의 역순으로 나온다.얻은 SCC에서 각 scc를 하나의 노드로 인식하게 만들어준다.새로운 노드간 그래프를 읽어서 진입차수를 계산해주기. 파이썬from collections import dequeimport syssys.setrecursionlimit(10**6)input = lambda : sys.stdin.readline().strip()TC = int(input())for tc in range(TC): # 타잔 N,M = map(int,input().split()) # 방문, 그룹관리, 카운팅, 스택 관리 V =.. 2025. 3. 8.
[파이썬] 백준 2150 : Strongly Connected Component (플레5) [파이썬] 백준 2150 : Strongly Connected Component (플레5)https://www.acmicpc.net/problem/2150풀이방향성 생각타잔 알고리즘. 그래프의 사이클 탐색하기 전체코드import syssys.setrecursionlimit(10**6)input = lambda : sys.stdin.readline().rstrip()N,M = map(int,input().split())G = [[] for _ in range(N+1)]for _ in range(M): a,b = map(int,input().split()) G[a].append(b)cnt = 0V = [-1]*(N+1)P = [-1]*(N+1)on_stack = [False]*(N+1)stack .. 2025. 3. 7.