목록백준 (7)
CS Student’s SAP&Tech Journey✨

1. 백준 2108번 통계학[백준] 2108번: 통계학 2. 오늘의 회고0. 문제 분석수를 처리하는 것은 통계학에서 상당히 중요한 일이다. 통계학에서 N개의 수를 대표하는 기본 통계값에는 다음과 같은 것들이 있다. 단, N은 홀수라고 가정하자.산술평균 : N개의 수들의 합을 N으로 나눈 값중앙값 : N개의 수들을 증가하는 순서로 나열했을 경우 그 중앙에 위치하는 값최빈값 : N개의 수들 중 가장 많이 나타나는 값범위 : N개의 수들 중 최댓값과 최솟값의 차이: 통계학에 대한 기본적인 문제이다. 산술평균, 중앙값, 최빈값, 범위를 구하면 된다. 1. 입력첫째 줄에 수의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 단, N은 홀수이다. : N이 홀수로 주어졌기에 중앙값을 구할 때 비교적 쉽게 구할 수..

1. 백준 1874번 스택 수열[백준] 1874번: 스택 수열 2. 오늘의 회고 0. 문제 분석 스택 (stack)은 기본적인 자료구조 중 하나로, 컴퓨터 프로그램을 작성할 때 자주 이용되는 개념이다. 스택은 자료를 넣는 (push) 입구와 자료를 뽑는 (pop) 입구가 같아 제일 나중에 들어간 자료가 제일 먼저 나오는 (LIFO, Last in First out) 특성을 가지고 있다.1부터 n까지의 수를 스택에 넣었다가 뽑아 늘어놓음으로써, 하나의 수열을 만들 수 있다. 이때, 스택에 push 하는 순서는 반드시 오름차순을 지키도록 한다고 하자. 임의의 수열이 주어졌을 때 스택을 이용해 그 수열을 만들 수 있는지 없는지, 있다면 어떤 순서로 push와 pop 연산을 수행해야 하는지를 알아낼 수 있다. ..

1. 백준 1436번 영화감독 숌백준 1436번: 영화감독 숌 2. 오늘의 회고 0. 문제 분석종말의 수란 어떤 수에 6이 적어도 3개 이상 연속으로 들어가는 수를 말한다. 제일 작은 종말의 수는 666이고, 그 다음으로 큰 수는 1666, 2666, 3666, .... 이다. 따라서, 숌은 첫 번째 영화의 제목은 "세상의 종말 666", 두 번째 영화의 제목은 "세상의 종말 1666"와 같이 이름을 지을 것이다. 일반화해서 생각하면, N번째 영화의 제목은 세상의 종말 (N번째로 작은 종말의 수) 와 같다. : 처음에는 앞뒤로 숫자를 더하면서 붙여야 하는지 해결 방법이 보이지 않았다. 입력 범위를 보고 브루트포스로 해결해도 된다는 생각을 한 후 문제를 풀 수 있었다. 브루트 포스 알고리즘은 시간과 ..

99클럽 코테 스터디 4일1. 백준 24444번 알고리즘 수업 - 너비 우선탐색 1[백준] 24444번: 알고리즘 수업 - 너비 우선탐색 2. 오늘의 회고 0. 문제 분석N개의 정점과 M개의 간선으로 구성된 무방향 그래프(undirected graph)가 주어진다. 정점 번호는 1번부터 N번이고 모든 간선의 가중치는 1이다. 정점 R에서 시작하여 너비 우선 탐색으로 노드를 방문할 경우 노드의 방문 순서를 출력하자.너비 우선 탐색 의사 코드는 다음과 같다. 인접 정점은 오름차순으로 방문한다. : 인접 정점은 오름차순으로 방문시켜야하므로 정렬해주어야 한다. 1. 입력첫째 줄에 정점의 수 N (5 ≤ N ≤ 100,000), 간선의 수 M (1 ≤ M ≤ 200,000), 시작 정점 R (1 ≤ R ≤ ..

1. 백준 24479번 알고리즘 수업 - 깊이 우선탐색 1 [백준] 24479번 : 알고리즘 수업 - 깊이 우선탐색 2. 오늘의 회고 0. 문제 분석N개의 정점과 M개의 간선으로 구성된 무방향 그래프(undirected graph)가 주어진다. 정점 번호는 1번부터 N번이고 모든 간선의 가중치는 1이다. 정점 R에서 시작하여 깊이 우선 탐색으로 노드를 방문할 경우 노드의 방문 순서를 출력하자.깊이 우선 탐색 의사 코드는 다음과 같다. 인접 정점은 오름차순으로 방문한다. : 인접 정점은 오름차순으로 방문시켜야하므로 정렬을 해주어야 한다. 1. 입력첫째 줄에 정점의 수 N (5 ≤ N ≤ 100,000), 간선의 수 M (1 ≤ M ≤ 200,000), 시작 정점 R (1 ≤ R ≤ N)이 주어진다.다음 M..

1. 백준 11561번 징검다리https://www.acmicpc.net/problem/11561 N번 징검다리는 반드시 밟아야 한다. :: 마지막 징검다리는 밟아야 한다는 뜻이다.:: 예를 들어, 입력이 100이면 13번째 징검다리는 꼭 건너야 한다는 뜻이다. 100을 밟는다는 뜻 아님! 2. 오늘의 회고* 정답은 아래에 있습니다.첫 번째 접근: 단순 구현으로 풀기 :: 시간초과단순 구현을 통해서 풀어보았다. 제시문을 통해 징검다리가 1 2 3 4 5 6 7 8 9 10 ... 중 1 3 6 10 에 해당한다는 것을 파악하고 단순 반복문을 통해 N에서 빼는 값을 늘리는 방식으로 해결하였다. N의 범위는 (1 ≤ N ≤ 10**16) 이기 때문에 시간초과 발생한다.T = int(input())for j..

1. 백준 1072번 게임https://www.acmicpc.net/problem/1072 2. 오늘의 회고* 정답은 아래에 있습니다.첫번째 접근: 단순 구현 시간초과파이썬 소수점 함수반올림 num = f " {num: .2f} " 소수점 3자리에서 반올림하여 2자리까지 출력버림 math.floor(num)올림 math.ceil(num) import mathx,y = map(int, input().split()) z = (y/x)*100z = math.floor(z)i = 1if x=1: print(i) break else: i = i+1 else: while True: ..