본문 바로가기

728x90
SMALL

분류 전체보기

(466)
백준 11404번 [플로이드](C++)-yes6686- 티스토리 백준 문제 풀이: 11404 [플로이드]문제 링크: https://www.acmicpc.net/problem/11404문제 설명:n개의 도시와 도시를 연결하는 m개의 버스가 주어질 때, 모든 도시 간의 최소 비용을 구하는 문제입니다. 주어진 입력은 방향 그래프이며, 간선의 가중치가 존재합니다. 출력은 도시 i에서 도시 j로 이동하는 데 드는 최소 비용을 나타내는 n × n 행렬입니다. 만약 갈 수 없다면 0을 출력합니다.입력:첫 번째 줄에 도시의 개수 n (2 ≤ n ≤ 100)이 주어집니다.두 번째 줄에 버스의 개수 m (1 ≤ m ≤ 100,000)이 주어집니다.다음 m개의 줄에는 출발 도시, 도착 도시, 비용이 주어집니다.출력:i에서 j로 가는 최소 비용을 나타내는 n × n 행렬을 출력합니다. 갈..
백준 11054번 [가장 긴 바이토닉 부분 수열](C++)-yes6686- 티스토리 백준 문제 풀이: 11054 [가장 긴 바이토닉 부분 수열]문제 링크: https://www.acmicpc.net/problem/11054문제 설명:바이토닉 수열은 부분 수열의 길이가 증가했다가 감소하는 특징을 가집니다. 주어진 배열에서 가장 긴 바이토닉 부분 수열의 길이를 구하는 문제입니다.입력:첫째 줄에 배열의 크기 n이 주어집니다. (1 ≤ n ≤ 1,000)둘째 줄에 배열의 원소가 주어집니다. (1 ≤ 원소 값 ≤ 1,000)출력:가장 긴 바이토닉 부분 수열의 길이를 출력합니다.문제 해결 코드#include #include using namespace std;int arr[1001];int inc[1001]; // 증가 부분 수열int dec[1001]; // 감소 부분 수열int main() {..
백준 10830번 [행렬 제곱](C++)-yes6686- 티스토리 백준 문제 풀이: 10830 [행렬 제곱]문제 링크: https://www.acmicpc.net/problem/10830문제 설명:N×N 정수 행렬 A가 주어질 때, AB를 구하고, 그 결과의 각 원소를 1,000으로 나눈 나머지를 출력하는 문제입니다.입력:첫째 줄에 행렬 크기 N (2 ≤ N ≤ 5)과 거듭제곱 횟수 B (1 ≤ B ≤ 100,000,000)이 주어집니다.둘째 줄부터 N개의 줄에 걸쳐 행렬의 원소가 주어집니다. 행렬의 각 원소는 1,000보다 작은 자연수입니다.출력:AB의 결과를 출력합니다.문제 해결 코드#include #include using namespace std;int n;long long b;int arr[6][6];int result[6][6];// 행렬 곱셈 함수void ..
백준 9935번 [문자열 폭발](C++)-yes6686- 티스토리 백준 문제 풀이: 9935 [문자열 폭발]문제 링크: https://www.acmicpc.net/problem/9935문제 설명:문자열 S에서 특정 문자열 P가 나타날 때마다 제거하며, 모든 P가 사라질 때까지 반복합니다. 결과 문자열을 출력하며, 모두 사라졌다면 "FRULA"를 출력합니다.입력:첫째 줄에 문자열 S가 주어집니다. (1 ≤ |S| ≤ 1,000,000)둘째 줄에 폭발 문자열 P가 주어집니다. (1 ≤ |P| ≤ 36)출력:모든 P를 제거한 후 남은 문자열을 출력합니다. 남은 문자열이 없다면 "FRULA"를 출력합니다.문제 해결 코드#include #include using namespace std;int main() { ios::sync_with_stdio(false); cin..
백준 9663번 [N-Queen](C++)-yes6686- 티스토리 백준 문제 풀이: 9663 [N-Queen]문제 링크: https://www.acmicpc.net/problem/9663문제 설명:N-Queen 문제는 N×N 체스판 위에 N개의 퀸을 서로 공격하지 못하도록 배치하는 경우의 수를 구하는 문제입니다. 퀸은 가로, 세로, 대각선으로 공격할 수 있습니다.입력:첫째 줄에 정수 N이 주어집니다. (1 ≤ N ≤ 15)출력:N개의 퀸을 서로 공격하지 못하게 배치하는 경우의 수를 출력합니다.문제 해결 코드#include #include #include using namespace std;int n;int column[15]; // 세로 열 체크int diag1[30]; // 오른쪽 아래 대각선 체크int diag2[30]; // 왼쪽 아래 대각선 체크int res..
백준 9251번 [LCS](C++)-yes6686- 티스토리 백준 문제 풀이: 9251 [LCS]문제 링크: https://www.acmicpc.net/problem/9251문제 설명:두 문자열 A와 B가 주어질 때, 두 문자열의 최장 공통 부분 수열 (LCS)의 길이를 구하는 문제입니다. 최장 공통 부분 수열은 두 문자열에서 순서를 유지하며 일부 문자를 선택하여 만들 수 있는 가장 긴 부분 수열입니다.입력:첫 번째 줄에 문자열 A가 주어집니다.두 번째 줄에 문자열 B가 주어집니다.문자열의 길이는 최대 1,000입니다.출력:첫 번째 줄에 두 문자열의 LCS 길이를 출력합니다.문제 해결 코드#include #include #include using namespace std;int dp[1001][1001];int main() { string a, b; c..
백준 28702번 [FizzBuzz](C++)-yes6686- 티스토리 백준 문제 풀이: 28702 [FizzBuzz]문제 링크: https://www.acmicpc.net/problem/28702문제 설명:입력된 3개의 문자열 중 숫자를 찾아 특정 연산을 수행한 결과에 따라 "Fizz", "Buzz", "FizzBuzz", 또는 숫자를 출력합니다. 여기서 중요한 점은, 숫자가 3의 배수, 5의 배수, 15의 배수(3과 5의 공배수)에 대해 **연속해서 발생할 일이 없기 때문**에, 단순 조건을 순차적으로 확인하는 방식이 가능합니다.입력:3개의 문자열이 공백으로 구분되어 한 줄로 주어집니다.문자열은 "Fizz", "Buzz" 또는 숫자로 구성됩니다.출력:계산된 값이 3과 5의 배수면 "FizzBuzz",3의 배수면 "Fizz",5의 배수면 "Buzz",그 외의 경우 계산된 ..
백준 31403번 [A + B - C](C++)-yes6686- 티스토리 백준 문제 풀이: 31403 [A + B - C]문제 링크: https://www.acmicpc.net/problem/31403문제 설명:정수 a, b, c가 주어질 때, 아래의 두 가지 결과를 출력하는 문제입니다.a + b - c숫자 a와 b를 문자열로 이어붙인 후 정수로 변환하여, c를 뺀 결과입력:한 줄에 세 개의 정수 a, b, c가 주어집니다. (1 ≤ a, b, c ≤ 106)출력:첫 번째 줄에 a + b - c의 결과를 출력합니다.두 번째 줄에 문자열로 이어붙인 a와 b에서 c를 뺀 결과를 출력합니다.문제 해결 코드#include #include using namespace std;int main() { ios::sync_with_stdio(false); cin.tie(NULL);..

728x90
LIST