[Solved] 백준 1260

from collections import deque
# dfs ->
def dfs(graph, v, checked):
checked[v] = True
print(v, end = '-')
for i in graph[v]:
if checked[i] == False:
dfs(graph, i, checked)
def BFS(check, graph, start):
que = deque([start]) # (중요) BFS는 큐를 만든다
check[start] = True
while que: # (중요) 재귀 호출 아니다 -> loop만 사용한다
v = que.popleft()
print(v, end = ' ')
for i in graph[v]:
if not check[i]:
que.append(i) # (중요) 방문 안한 노드의 이웃 전체 넣어줌
check[i] = True # (중요) 넣은건 바로 체크
#---------------------------------------------------------------------#
n, m, v = map(int, input().split())
arr = [list(map(int, input().split())) for _ in range(m)]
check = [False] * (n+1) # (중요) False로 만들 것
# Create Graph (내가 만듦)
graph = [[] for _ in range(n+1)]
for i in range(len(arr)):
graph[arr[i][0]].append(arr[i][1])
graph[arr[i][1]].append(arr[i][0])
# 백준 1260의 조건용
for i in range(len(graph)):
graph[i].sort()
#---------------------------------------------------------------------#
DFS(check, graph, v)
print()
check = [False] * (n+1) # (중요) 초기화 해줘야 한다......
BFS(check, graph, v)
[Solved] 나머지가 1이 되는 수
class Solution {
public int solution(int n) {
int x = 1; //1부터 시작해서
while(n % x != 1){ //나머지가 1이 나올 때까지 계속 돌려서
x++;
}
int answer = x; //나오면 그게 answer
return answer;
}
}
[Solved] 없는 숫자 더하기
class Solution {
public int solution(int[] numbers) {
int answer = 45;
for(int i : numbers){
answer -= i;
}
return answer;
}
}