[BOJ 14002] 가장 긴 증가하는 부분 수열 4
https://www.acmicpc.net/problem/14002 14002번: 가장 긴 증가하는 부분 수열 4 수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이고, 길이는 4이다. www.acmicpc.net [BOJ 11053] 가장 긴 증가하는 부분 수열 과 똑같이 길이를 구한 뒤에 dp의 맨 끝부터 탐색을 하면서 가능한 최대 길이랑 같은지 다른지를 확인하면 된다. 같은 값이 나올 때마다 최대 길이를 1씩 줄여서 dp[i]에서 가능한 최대 길이를 구하면 된다. #include #include #de..
2020. 4. 7.
[BOJ 11053] 가장 긴 증가하는 부분 수열
https://www.acmicpc.net/problem/11053 11053번: 가장 긴 증가하는 부분 수열 수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이고, 길이는 4이다. www.acmicpc.net 가장 긴 증가하는 부분 수열의 길이를 구하는 문제이다. 굳이 연속적인 배열이 아니여도 상관없다. 주어진 수열을 순회하면서, 각 순회마다 현재위치에서 첫번째 위치까지 돌면서 각 위치의 값보다 현재 위치의 값이 크면 현재 위치까지의 가장 긴 증가수열은 각 위치의 길이 + 1이다. 이를 통해서 구하면 된다..
2020. 4. 7.
[BOJ 15685] 드래곤 커브
https://www.acmicpc.net/problem/15685 15685번: 드래곤 커브 첫째 줄에 드래곤 커브의 개수 N(1 ≤ N ≤ 20)이 주어진다. 둘째 줄부터 N개의 줄에는 드래곤 커브의 정보가 주어진다. 드래곤 커브의 정보는 네 정수 x, y, d, g로 이루어져 있다. x와 y는 드래곤 커브의 시작 점, d는 시작 방향, g는 세대이다. (0 ≤ x, y ≤ 100, 0 ≤ d ≤ 3, 0 ≤ g ≤ 10) 입력으로 주어지는 드래곤 커브는 격자 밖으로 벗어나지 않는다. 드래곤 커브는 서로 겹칠 수 있다. 방향은 0, 1, 2, www.acmicpc.net [0, 100] 내에서 사각형의 4개의 점이 드래곤 커브의 일부인 사각형의 개수를 찾는 문제이다. 드래곤 커브를 모두 그린 다음에 ..
2020. 3. 25.
[BOJ 1924] 2007년
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 입력받은 날짜까지의 일 수를 모두 더한 후 7로 나눈 나머지를 이용하여 요일을 출력하면 된다. #include int main() { int day[] = { 31,28,31,30,31,30,31,31,30,31,30,31 }; int m, d; scanf("%d %d", &m, &d); for (int i = 1; i < m; i++) d += day[i - 1]; s..
2020. 1. 3.