Algorythms140 백준 16943번 숫자 재배치 c++ 풀이 문제 두 정수 A와 B가 있을 때, A에 포함된 숫자의 순서를 섞어서 새로운 수 C를 만들려고 한다. 즉, C는 A의 순열 중 하나가 되어야 한다. 가능한 C 중에서 B보다 작으면서, 가장 큰 값을 구해보자. C는 0으로 시작하면 안 된다. 입력 첫째 줄에 두 정수 A와 B가 주어진다. 출력 B보다 작은 C중에서 가장 큰 값을 출력한다. 그러한 C가 없는 경우에는 -1을 출력한다. 제한 1 ≤ A, B < 109 예제 입력 1 복사 1234 3456 예제 출력 1 복사 3421 예제 입력 2 복사 1000 5 예제 출력 2 복사 -1 예제 입력 3 복사 789 123 예제 출력 3 복사 -1 순열 문제 주의 next_permutation은 오름차순으로 정렬되어 있어야 제대로 사용 가능하다. prev_pe.. 2024. 1. 19. 백준 11931번 수 정렬하기 4 c++ 풀이 문제 N개의 수가 주어졌을 때, 이를 내림차순으로 정렬하는 프로그램을 작성하시오. 입력 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 절댓값이 1,000,000보다 작거나 같은 정수이다. 수는 중복되지 않는다. 출력 첫째 줄부터 N개의 줄에 내림차순으로 정렬한 결과를 한 줄에 하나씩 출력한다. 예제 입력 1 복사 5 1 2 3 4 5 예제 출력 1 복사 5 4 3 2 1 기본 정렬 문제 - c++ 풀이 #include using namespace std; int n; vectorv; int main() { ios_base::sync_with_stdio(0); cin.tie(0), cout.tie(0); cin >> n; for.. 2024. 1. 19. 백준 1756번 피자 굽기 c++ 풀이 문제 월드피자 원주 지점에서 N개의 피자 반죽을 오븐에 넣고 구우려고 한다. 그런데, 월드피자에서 만드는 피자 반죽은 지름이 제각각이다. 그런가하면, 월드피자에서 사용하는 오븐의 모양도 몹시 오묘하다. 이 오븐은 깊은 관처럼 생겼는데, 관의 지름이 깊이에 따라 들쭉날쭉하게 변한다. 아래는 오븐의 단면 예시이다. 피자 반죽은 완성되는 순서대로 오븐에 들어간다. 이렇게 N개의 피자가 오븐에 모두 들어가고 나면, 맨 위의 피자가 얼마나 깊이 들어가 있는지가 궁금하다. 이를 알아내는 프로그램을 작성하시오. 입력 첫째 줄에 오븐의 깊이 D와 피자 반죽의 개수 N이 공백을 사이에 두고 주어진다. (1 ≤ D, N ≤ 300,000) 둘째 줄에는 오븐의 최상단부터 시작하여 깊이에 따른 오븐의 지름이 차례대로 주어진다.. 2024. 1. 18. 백준 3049번 다각형의 대각선 c++ 풀이 문제 세 대각선이 한 점에서 만나지 않는 볼록 N각형이 주어졌을 때, 대각선의 교차점의 개수를 세는 프로그램을 작성하시오. 아래 그림은 위의 조건을 만족하는 한 육각형의 교차점 그림이다. 모든 내부각이 180도보다 작은 다각형을 볼록 다각형이라고 한다. 입력 첫째 줄에 N이 주어진다. (3 ≤ N ≤ 100) 출력 첫째 줄에 교차점의 개수를 출력한다. 예제 입력 1 복사 3 예제 출력 1 복사 0 예제 입력 2 복사 4 예제 출력 2 복사 1 예제 입력 3 복사 6 예제 출력 3 복사 15 교차점이 생기는 조건은 4개의 꼭지점에서 나온 선분이 만나게 되면 교차점이 생기게 된다. 따라서 nC4를 구하게 된다면 교차점의 개수를 구할 수 있다. n * (n-1) * (n-2) * (n-3) / 24 이렇게 n.. 2024. 1. 18. 백준 1365번 꼬인 전깃줄 c++ 풀이 문제 공화국에 있는 유스타운 시에서는 길을 사이에 두고 전봇대가 아래와 같이 두 줄로 늘어서 있다. 그리고 길 왼편과 길 오른편의 전봇대는 하나의 전선으로 연결되어 있다. 어떤 전봇대도 두 개 이상의 다른 전봇대와 연결되어 있지는 않다. 문제는 이 두 전봇대 사이에 있는 전깃줄이 매우 꼬여 있다는 점이다. 꼬여있는 전깃줄은 화재를 유발할 가능성이 있기 때문에 유스타운 시의 시장 임한수는 전격적으로 이 문제를 해결하기로 했다. 임한수는 꼬여 있는 전깃줄 중 몇 개를 적절히 잘라 내어 이 문제를 해결하기로 했다. 하지만 이미 설치해 놓은 전선이 아깝기 때문에 잘라내는 전선을 최소로 하여 꼬여 있는 전선이 하나도 없게 만들려고 한다. 유스타운 시의 시장 임한수를 도와 잘라내야 할 전선의 최소 개수를 구하는 프.. 2024. 1. 18. 백준 11779번 최소비용 구하기 2 c++ 풀이 문제 n(1≤n≤1,000)개의 도시가 있다. 그리고 한 도시에서 출발하여 다른 도시에 도착하는 m(1≤m≤100,000)개의 버스가 있다. 우리는 A번째 도시에서 B번째 도시까지 가는데 드는 버스 비용을 최소화 시키려고 한다. 그러면 A번째 도시에서 B번째 도시 까지 가는데 드는 최소비용과 경로를 출력하여라. 항상 시작점에서 도착점으로의 경로가 존재한다. 입력 첫째 줄에 도시의 개수 n(1≤n≤1,000)이 주어지고 둘째 줄에는 버스의 개수 m(1≤m≤100,000)이 주어진다. 그리고 셋째 줄부터 m+2줄까지 다음과 같은 버스의 정보가 주어진다. 먼저 처음에는 그 버스의 출발 도시의 번호가 주어진다. 그리고 그 다음에는 도착지의 도시 번호가 주어지고 또 그 버스 비용이 주어진다. 버스 비용은 0보다 .. 2024. 1. 18. 이전 1 ··· 7 8 9 10 11 12 13 ··· 24 다음