전체 글

항공대 알고리즘 동아리 Koala 🥰
문제 풀이 더보기 단순한 버블정렬이고, 한번 정렬을 시행할 때마다, 출력해주면 된다. 아주 기본적인 것이지만, 배열에 쓰레기값 여부를 고려해야, "초과 출력"같은 오류에서 허우적대지 않는다.. 소스 코드 더보기 // // main.cpp // b_2949 // // Created by 이동연 on 2021/01/25. // #include using namespace std; int main(){ int ary[6] = {0}; ary[5] = 10; for(int i = 0 ; i > ary[i]; } for(int i = 0 ; i ary[j+1]){ int temp = 0; ..
· Codeforce
문제 링크 codeforces.com/contest/1474 Dashboard - Codeforces Round #696 (Div. 2) - Codeforces codeforces.com A. Puzzle From the Future 문제 이진수 두 개를 가능한 한 크게 만드는 또 다른 이진수를 구하는 문제이다. 단, 연속된 수가 있으면 압축이 된다. 풀이 1 더보기 이 문제는 그리디하게 해결할 수 있습니다. 우선, 연속된 수에 대한 "아주 강렬한" 조건이 있기 때문에 직감적으로 이진수를 연속되게 만들면 안 될 것 같네요. 이미 이진수 하나가 주어져있기 때문에, 우리는 나머지 정답이 될 이진수는 연속되지 않도록 만들 수 있습니다. 또한 "가장 크게 만드는" 조건이 있으므로 최대한 2를 만들도록 노력해야겠..
youtu.be/AO9-efe9ni8
www.acmicpc.net/problem/11060 11060번: 점프 점프 재환이가 1×N 크기의 미로에 갇혀있다. 미로는 1×1 크기의 칸으로 이루어져 있고, 각 칸에는 정수가 하나 쓰여 있다. i번째 칸에 쓰여 있는 수를 Ai라고 했을 때, 재환이는 Ai이하만큼 오른쪽으로 www.acmicpc.net 이 문제 진짜 어렵더라구요... 저도 해설 보고 풀었습니다. 근데 해설들이 하나같이 참 대충이더라구요... DP의 길은 참 멀고도 먼 것 같습니다. [정답 코드 보기] 더보기 #include #include #include #include #include #include using namespace std; int main() { int n; int field[1500] = { 0, }; int dp..
www.acmicpc.net/problem/2011 2011번: 암호코드 나올 수 있는 해석의 가짓수를 구하시오. 정답이 매우 클 수 있으므로, 1000000으로 나눈 나머지를 출력한다. 암호가 잘못되어 암호를 해석할 수 없는 경우에는 0을 출력한다. www.acmicpc.net 고생 많으셨어요! DP문제들을 너무 잘 풀어주셔서 살짝 어려운 문제들을 내봤습니다. 근데 너무 어려웠던 것 같아요.... 저도 다시 푸려니까 어렵더라구요... 죄송합니다... 그럼 풀이 바로 시작하겠습니다! [정답 코드 보기] 더보기 #include #include #define mod 1000000; using namespace std; int main() { ios_base::sync_with_stdio(0); string ..
www.acmicpc.net/problem/1912 1912번: 연속합 첫째 줄에 정수 n(1 ≤ n ≤ 100,000)이 주어지고 둘째 줄에는 n개의 정수로 이루어진 수열이 주어진다. 수는 -1,000보다 크거나 같고, 1,000보다 작거나 같은 정수이다. www.acmicpc.net 문제 n개의 정수로 이루어진 임의의 수열이 주어진다. 우리는 이 중 연속된 몇 개의 수를 선택해서 구할 수 있는 합 중 가장 큰 합을 구하려고 한다. 단, 수는 한 개 이상 선택해야 한다. 예를 들어서 10, -4, 3, 1, 5, 6, -35, 12, 21, -1 이라는 수열이 주어졌다고 하자. 여기서 정답은 12+21인 33이 정답이 된다. 입력 첫째 줄에 정수 n(1 ≤ n ≤ 100,000)이 주어지고 둘째 줄에는..
www.acmicpc.net/problem/11057 11057번: 오르막 수 오르막 수는 수의 자리가 오름차순을 이루는 수를 말한다. 이때, 인접한 수가 같아도 오름차순으로 친다. 예를 들어, 2234와 3678, 11119는 오르막 수이지만, 2232, 3676, 91111은 오르막 수가 아니다. 수 www.acmicpc.net 모듈러 연산이 또 나왔네요!! 항상 기억하면 좋습니다. (A+B)%M은 다음과 같습니다. (A%M + B%M)%M 즉 어떤 답을 모듈러 연산을 통해 도출해야 할 경우, 정답을 구하는 과정에서 나오는 연산의 결과를 계속 모듈러 연산 해주면 됩니다. [코드 보기] 더보기 #include #include #define mod 10007 using namespace std; int ..
www.acmicpc.net/problem/14606 14606번: 피자 (Small) 예제1의 입력이 1이므로, 게임 시작부터 갑이 분리할 수 있는 피자탑이 없습니다. 따라서 갑이 얻는 즐거움은 0입니다. 예제2의 정답 3은 다음과 같은 과정을 통해 얻어집니다. 먼저 놀이를 시작 www.acmicpc.net 입력이 10까지 밖에 없습니다. 간단한 문제입니다. 채점시 방법은 보지 않고 출력 결과만 보기 때문에, 이처럼 간단한 문제는 결과를 직접 배열에 저장해놓고 입력에 따라 출력하는 방법을 쓸 수도 있겠습니다. [코드 보기] 더보기 #include using namespace std; int main() { int n; int dp[100] = { 0,0,1,3,6,10}; cin >> n; for (i..
www.acmicpc.net/problem/9461 9461번: 파도반 수열 오른쪽 그림과 같이 삼각형이 나선 모양으로 놓여져 있다. 첫 삼각형은 정삼각형으로 변의 길이는 1이다. 그 다음에는 다음과 같은 과정으로 정삼각형을 계속 추가한다. 나선에서 가장 긴 변의 www.acmicpc.net 위 그림과 같은 나선 모양의 정삼각형들을 연속적으로 그려나갈때 입력받은 N번째에 해당하는 정삼각형의 변 길이를 구하는 문제이다. 정삼각형의 변의 길이 P(N)을 나열해 보면 1, 1, 1, 2, 2, 3, 4, 5, 7, 9, 12, 16, 21, ... 이다. 첫번째 원소부터 살펴보면 규칙성이 잘 보이지 않는다. 하지만 여섯번째 원소(3)부터는 직전의 원소(2)와 5칸 앞의 원소(1)의 합이라는 규칙성을 찾을 수 ..
www.acmicpc.net/problem/2688 2688번: 줄어들지 않아 첫째 줄에 테스트 케이스의 개수 T(1 k; v.push_back(k); max_num = max(max_num, k); } for (int i = 0;i < 10;i++) { dp[1][i] = 1; } result[1] = 10; for (int i = 2;i
www.acmicpc.net/problem/1010 1010번: 다리 놓기 입력의 첫 줄에는 테스트 케이스의 개수 T가 주어진다. 그 다음 줄부터 각각의 테스트케이스에 대해 강의 서쪽과 동쪽에 있는 사이트의 개수 정수 N, M (0 < N ≤ M < 30)이 주어진다. www.acmicpc.net 가끔 이런 문제들이 있습니다. 간단한 수학문제를, 아주아주 길고 긴 스토리 텔링을 통해 헷갈리게 해놓고 '히히 이거 사실 수학문젠데.... 알아 챌수 있닝???' 식의 문제죠.. 이 문제는 조합으로 풀 수 있는 문제입니다. 하지만 역시 수가 매우매우 커질 것 같습니다. 조합으로 푸려다가 포기하셨다면, 제 코드가 도움이 될 것 같습니다. [전체 코드 보기] 더보기 #include using namespace st..
www.acmicpc.net/problem/2688 2688번: 줄어들지 않아 첫째 줄에 테스트 케이스의 개수 T(1
KauKoala
Koala