목록백준 (497)
알고리즘 모음(C++)
문제 링크입니다. https://www.acmicpc.net/problem/1938 1938번: 통나무 옮기기 첫째 줄에 주어진 평지의 한 변의 길이 N이 주어진다. (4 ≤ N ≤ 50) 주어진다. 이어서 그 지형의 정보가 0, 1, B, E로 이루어진 문자열로 주어진다. 한 줄에 입력되는 문자열의 길이는 N이며 입력 문 www.acmicpc.net BFS를 이용한 구현 문제였습니다. 3개의 좌표를 동시에 옮겨야 했었기에 코드가 복잡해진 것 같습니다. 나무가 3개의 좌표가 연달아서 주어집니다. 그렇다면 움직일 때 3개의 좌표를 같이 움직여서 다른 위치로 갈 수 있는지를 확인해야합니다. 다른 좌표로 이동할 때 고려해야할 점이 2가지 있는데, 1. 이동한 3개의 좌표에 다른 나무가 없어야한다. 2. 이전에..
문제 링크입니다. https://www.acmicpc.net/problem/15596 15596번: 정수 N개의 합 C++17, Java 8, Python 3, C11, PyPy3, C99, C++98, C++11, C++14, Go, C99 (Clang), C++98 (Clang), C++11 (Clang), C++14 (Clang), C11 (Clang), C++17 (Clang) www.acmicpc.net 주어진 값의 합을 구하는 코드를 짜는 문제입니다. 자세한 것은 코드를 참고해주세요 #include long long sum(std::vector &a){ long long Sum = 0; for(int i = 0; i < a.size(); i++){ Sum += a[i]; } return Sum..
문제 링크입니다. https://www.acmicpc.net/problem/5622 5622번: 다이얼 첫째 줄에 알파벳 대문자로 이루어진 단어가 주어진다. 단어의 길이는 2보다 크거나 같고, 15보다 작거나 같다. www.acmicpc.net 조건문을 사용하는 간단한 문제였습니다. 단어를 구성하는 알파벳이 어디에 속하는지만 판단하는 문제였습니다. 자세한 것은 코드를 참고해주세요. #include #include #include #include #include #include #include #define P pair #define F first #define S second #define INF 987654321 using namespace std; string N; int main(){ cin.tie..
문제 링크입니다. https://www.acmicpc.net/problem/1924 1924번: 2007년 첫째 줄에 빈 칸을 사이에 두고 x(1 ≤ x ≤ 12)와 y(1 ≤ y ≤ 31)이 주어진다. 참고로 2007년에는 1, 3, 5, 7, 8, 10, 12월은 31일까지, 4, 6, 9, 11월은 30일까지, 2월은 28일까지 있다. www.acmicpc.net 수학을 이용한 구현 문제입니다. 날짜를 입력받아 요일을 출력하는 문제입니다. 예를 들어, 3월 14일인 경우, 1월과 2월의 날짜 수와 14를 더해 총 일수를 구합니다, 총 일수를 7로 나눈 뒤, 나머지를 따라서 요일을 정해주면 됩니다. 0 -> 일요일 ~ 6-> 토요일로 정해주면 구할 수 있습니다. 자세한 것은 코드를 참고해주세요 #in..
문제 링크입니다. https://www.acmicpc.net/problem/2445 2445번: 별 찍기 - 8 첫째 줄부터 2×N-1번째 줄까지 차례대로 별을 출력한다. www.acmicpc.net 반복문을 사용한 별 찍기 문제입니다. 먼저 한줄에는 별과 띄어쓰기를 합해서 N*2개가 존재하는 것을 확인할 수 있습니다. 그리고 1~N / (N+1) ~ (N*2 - 1)로 줄을 나눠서 생각해보면 쉽습니다. 1번 줄에는 별이 1개씩 2번 나오고, 띄어쓰기는 N*2 -2개가 나옵니다. 2번 줄에는 별이 2개씩 2번 나오고, 띄어쓰기는 N*2 -4개가 나옵니다. 3번 줄에는 별이 3개씩 2번 나오고, 띄어쓰기는 N*2 -6개가 나옵니다. 4번 줄에는 별이 4개씩 2번 나오고, 띄어쓰기는 N*2 -8개가 나옵니다..
문제 링크입니다. https://www.acmicpc.net/problem/2523 2523번: 별 찍기 - 13 첫째 줄부터 2×N-1번째 줄까지 차례대로 별을 출력한다. www.acmicpc.net 반복문을 사용한 별 찍기 문제입니다. 예제를 1~N과 N+1 ~ N*2-1로 나누어 생각하면 쉽게 구할 수 있습니다. 자세한 것은 코드를 참고해주세요 #include #include #include #include #include #include #include #define P pair #define F first #define S second #define INF 987654321 using namespace std; int N; int main(){ cin.tie(0); cout.tie(0); cin..
문제 링크입니다. https://www.acmicpc.net/problem/2446 2446번: 별 찍기 - 9 첫째 줄부터 2×N-1번째 줄까지 차례대로 별을 출력한다. www.acmicpc.net 반복문을 사용하는 별찍기 문제입니다. 첫줄에는 (N*2) - 1개의 별과 0개의 띄어쓰기가, 둘째 줄에서는 (N-1)*2-1개의 별과 1개의 띄어쓰기가, 세번째 줄에서는 (N-2)*2-1개의 별과 2개의 띄어쓰기가 있습니다. 이를 봤을 때, 1~N개까지의 줄에는 (N-i)*2-1개의 별과, 0~N-1개의 띄어쓰기가 나옴을 알 수 있습니다. N+1 ~ N*2-1개의 줄에는 이를 반대로 뒤집어 놓은 것음으로 반대로만 출력해주면 됩니다. 자세한 것은 코드를 참고해주세요 #include #include #inclu..
문제 링크입니다. https://www.acmicpc.net/problem/2443 2443번: 별 찍기 - 6 첫째 줄에는 별 2×N-1개, 둘째 줄에는 별 2×N-3개, ..., N번째 줄에는 별 1개를 찍는 문제 별은 가운데를 기준으로 대칭이어야 한다. www.acmicpc.net 별 찍기 문제입니다. https://junseok.tistory.com/375 해당 문제를 거꾸로 만들었습니다. 참고해주세요 백준 2442 - 별 찍기 - 5(C++) 문제 링크입니다. https://www.acmicpc.net/problem/2442 2442번: 별 찍기 - 5 첫째 줄에는 별 1개, 둘째 줄에는 별 3개, ..., N번째 줄에는 별 2×N-1개를 찍는 문제 별은 가운데를 기준으로 대칭이어야 한다. ww..
문제 링크입니다. https://www.acmicpc.net/problem/2442 2442번: 별 찍기 - 5 첫째 줄에는 별 1개, 둘째 줄에는 별 3개, ..., N번째 줄에는 별 2×N-1개를 찍는 문제 별은 가운데를 기준으로 대칭이어야 한다. www.acmicpc.net 유명한 별찍기 문제입니다. 띄어쓰기와 별을 이용해 원하는 출력을 만들면 됩니다. 첫째 줄은 N-1개의 띄어쓰기와 1개의 별이 출력됩니다. 둘째 줄은 N-2개의 띄어쓰기와 3개의 별이 출력됩니다. 셋째 줄은 N-3개의 띄어쓰기와 5개의 별이 출력됩니다. 이와 같은 규칙을 찾아 반복문을 사용해주면 됩니다. 자세한 것은 코드를 참고해주세요 #include #include #include #include #include #include..
문제 링크입니다. https://www.acmicpc.net/problem/1193 1193번: 분수찾기 첫째 줄에 X(1 ≤ X ≤ 10,000,000)가 주어진다. www.acmicpc.net 구현 문제였습니다. 자세한 것은 코드를 참고해주세요. #include #include #include #include #include #include #include #define P pair #define F first #define S second #define INF 987654321 using namespace std; int N; int main(){ cin.tie(0); cout.tie(0); cin >> N; int cnt = 0, sum = 0; while(1){ if(N
문제 링크입니다. https://www.acmicpc.net/problem/3109 3109번: 빵집 유명한 제빵사 김원웅은 빵집을 운영하고 있다. 원웅이의 빵집은 글로벌 재정 위기를 피해가지 못했고, 결국 심각한 재정 위기에 빠졌다. 원웅이는 지출을 줄이고자 여기저기 지출을 살펴보던 www.acmicpc.net DFS를 이용한 문제입니다. 첫번째 열이 다른 빵집, 마지막 열이 자신의 열일 때, 파이프라인을 최대 몇개까지 이을 수 있는지 구하는 문제입니다. 파이프 라인을 이을 수 있는 방법은 오른쪽, 오른쪽 위 대각선, 오른쪽 아래 대각선인 총 3개입니다. 파이프라인을 최대로 짓는 수를 구하는 문제이기에, 첫째 열에서 모든 행의 값을 전부 DFS로 확인해봐야합니다. X번째 행에서 시작한 파이프가 마지막 ..
문제 링크입니다. https://www.acmicpc.net/problem/25304 25304번: 영수증 준원이는 저번 주에 살면서 처음으로 코스트코를 가 봤다. 정말 멋졌다. 그런데, 몇 개 담지도 않았는데 수상하게 높은 금액이 나오는 것이다! 준원이는 영수증을 보면서 정확하게 계산된 것 www.acmicpc.net 사칙연산을 이용한 간단한 문제였습니다. 영수증과 금액이 주어지고, 둘의 값이 맞는지를 확인하는 문제입니다. 자세한 것은 코드를 참고해주세요 #include #include #include #include #include #include #include #define P pair #define F first #define S second #define INF 987654321 using n..