분류 전체보기

Problem Solution 먼저 수열 A의 크기를 입력 받고 for문을 활용해 수열 A의 원소들을 입력 받는다 dp 배열을 모두 1로 초기화한다. 0부터 i-1까지 순회하면서 arr[i] 보다 작은 원소들을 찾고, 작은 원소 arr[j]를 찾으면 dp[i]와 dp[j]+1 중 큰 값을 dp[i]에 저장한다. 마지막으로 dp배열 중 가장 큰 값을 찾아 result에 저장한 후 출력한다. Answer #include #include using namespace std; int arr[1001]; int dp[1001]; int main() { int n; cin >> n; for (int i = 0; i > arr[i]; } for (int i = 0; i < n; i++)..
문제 https://www.acmicpc.net/problem/25214 25214번: 크림 파스타 각 \(A_i\)가 추가된 직후의 문제의 답 \(N\)개를 공백으로 구분하여 출력한다. www.acmicpc.net Algorithm 1 ≤ i ≤ j ≤ len(A)을 만족하는 A[j] - A[i]의 최댓값을 구하는 문제이다. dp배열을 만들어주고, 각 배열의 첫번째 원소는 i-1까지의 최댓값과 A[i] 와 dp[i-1]까지의 최솟값의 차이중 최댓값을 취한다.각 배열의 두번째 원소는 dp[i-1] 과 A[i]의 최솟값을 취해주고 dp배열을 점점 확장해나가면 된다. 최종 출력은 첫번째원소를 출력해주면 된다. Code input = __import__('sys').stdin.readline n = int(i..
1463번: 1로 만들기 (acmicpc.net) 1463번: 1로 만들기 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. www.acmicpc.net 문제 설명: 세 가지 연산을 적절히 사용해서 1을 만드는 문제. 최소한의 연산을 원함. 문제 코드: x=int(input()) dic={1:0,2:1,3:1} def fib(x): if x in list(dic.keys()): return dic[x] if x%6==0: dic[x]=min(fib(x//3),fib(x//2))+1 elif x%3==0: dic[x]=min(fib(x//3),fib(x-1))+1 elif x%2==0: dic[x]=min(fib(x//2),fib(x-1))+1 else: dic[x]=fib(x-..
문제 https://www.acmicpc.net/problem/1149 1149번: RGB거리 첫째 줄에 집의 수 N(2 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 각 집을 빨강, 초록, 파랑으로 칠하는 비용이 1번 집부터 한 줄에 하나씩 주어진다. 집을 칠하는 비용은 1,000보다 작거나 www.acmicpc.net 코드 n=int(input()) sums=0 d=[] for i in range(n): d.append(list(map(int,input().split()))) for i in range(1,n): d[i][0]=min(d[i-1][1],d[i-1][2])+d[i][0] d[i][1]=min(d[i-1][0],d[i-1][2])+d[i][1] d[i][2]=min(d[i..
문제 https://www.acmicpc.net/problem/1362 1362번: 펫 당신은 게임으로 펫을 기르고 있습니다. 이 펫은 웃는 표정, 슬픈 표정을 가지고 있으며, 만약 죽는다면 '드러눕습니다.' 펫에게는 적정 체중이 있습니다. 펫의 실제 체중이 적정 체중의 1/2배를 www.acmicpc.net 문제 설명 각 시나리오마다 적정 체중과 실제 체중을 입력받는다. 명령에 따라 실제 체중을 변화시키고, 시나리오가 종료되면 조건에 따라 펫의 상태를 출력한다. 코드 import sys input = __import__('sys').stdin.readline def main(): idx = 1 # 시나리오 횟수 while True: L, R = map(int, input().rstrip().split(..
문제: 10867번: 중복 빼고 정렬하기 (acmicpc.net) 10867번: 중복 빼고 정렬하기 첫째 줄에 수의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째에는 숫자가 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. www.acmicpc.net 코드 코드 설명 먼저, n을 몇으로 설정한 것인지 입력받는다. 그 후, 배열에서 중복된 수나 문자를 허용하지 않는 set 라이브러리를 이용해 ascend이름을 가진 int형 set 배열을 선언한다. n개의 정수를 입력받아야 하므로 for문을 이용하여 수를 입력받고, insert()를 활용해 ascend배열에 입력한 수를 넣어준다. 주어진 문제는 n개의 정수를 입력받은 후 오름차순으로 출력을 하는 것이고 중복된 수는 한 번만 출력..
규칙 - 문제 인증, 블로그 포스팅, 모의테스트 참여를 하지 않을시 각각 활동비에서 -1000원씩 차감 - 학회 활동이 끝난 후, 스터디 우수 참여자에게 차감된 활동비를 N분의 1로 나눠서 지급 - 스터디 우수 참여자 기준은 남은 활동비의 내림차순으로 정렬하여 가장 높은 참여자들로 선정 강지완 - o773h 김규현 - bsghk38 김남수 - otherwedn 김도욱 - kduk 김재혁 - 김태우 - rereers1125 노유림 - elice100479 노현우 - 박창현 - begojara99 양지원 - moonlight0815 윤여빈 - 유완규 - beans3142 윤소윤 - soyoon602 이승헌 - lsheon0927 이유경 - nunomi0 이은주 - leunju217 정성주 - koreatst..
규칙 - 문제 인증, 블로그 포스팅, 모의테스트 참여를 하지 않을시 각각 활동비에서 -1000원씩 차감 - 학회 활동이 끝난 후, 스터디 우수 참여자에게 차감된 활동비를 N분의 1로 나눠서 지급 - 스터디 우수 참여자 기준은 남은 활동비의 내림차순으로 정렬하여 가장 높은 참여자들로 선정 차정은 - jyc0011 하영민 - hym7264 박수완 - nick6767 김강연 - kky9525 윤재현 - oyc907 변영준 - forestwoodleaves 박수지 - sts07121 권용현 - dydgus9952 박상신 - pss6039 김남수 - otherwedn 윤여빈 - yeobin03 1. 문제 인증 1주차 2주차 3주차 4주차 5주차 6주차 7주차 8주차 차정은 ㅇ ㅇ ㅇ ㅇ ㅇ ㅇ ㅇ ㅇ 하영민 ㅇ ..
문제 https://www.acmicpc.net/problem/10823 10823번: 더하기 2 문자열 S가 여러 줄에 걸쳐서 주어진다. S의 길이는 최대 10,000이다. 포함되어있는 정수는 1,000,000보다 작거나 같은 자연수이다. www.acmicpc.net 문제 설명 숫자와 ','로만 이루어진 문자열 S를 입력받고 S에 포함되어 있는 자연수의 합을 구하는 문제이다. 문지열 S는 여러 줄에 걸쳐서 주어지며, 최대 길이는 10000이다. ','는 연속해서 주어지지 않는다. 코드 #input = __import__('sys').stdin.readline def main(): res = '' while True: try: string = input() res += string except EOFEr..
1. 문제 https://www.acmicpc.net/problem/15656 15656번: N과 M (7) N개의 자연수와 자연수 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. N개의 자연수는 모두 다른 수이다. N개의 자연수 중에서 M개를 고른 수열 www.acmicpc.net 2. 코드 n,m = map(int,input().split()) nums = list(map(int,input().split())) nums.sort() ans = [] def back(): if len(ans) == m: print(" ".join(map(str,ans))) return for i in range(n): ans.append(nums[i]) back() ans..
문제 https://www.acmicpc.net/problem/1350 1350번: 진짜 공간 첫째 줄에 파일의 개수 N이 주어진다. N은 50보다 작거나 같은 자연수이다. 둘째 줄에는 파일의 크기가 공백을 사이에 두고 하나씩 주어진다. 파일의 크기는 1,000,000,000보다 작거나 같은 음이 아닌 www.acmicpc.net 어떤 파일 시스템에는 디스크 공간이 파일의 사이즈와 항상 같지는 않다. 이것은 디스크가 일정한 크기의 클러스터로 나누어져 있고, 한 클러스터는 오직 한 파일만 이용할 수 있기 때문이다. 예를 들어, 클러스터의 크기가 512바이트이고, 600바이트 파일을 저장하려고 한다면, 두 개의 클러스터에 저장하게 된다. 두 클러스터는 다른 파일과 공유할 수 없기 때문에, 디스크 사용 공간은..
https://www.acmicpc.net/problem/12756 12756번: 고급 여관 플레이어 A의 카드가 남아있다면 "PLAYER A"를, 플레이어 B의 카드가 남아있다면 "PLAYER B"를 출력한다. 모두 죽은 상태라면 "DRAW"를 따옴표 없이 출력한다. www.acmicpc.net 문제해석 임의의 꺼낸 카드로 상대와 겨루어 생명력을 0을 만들면 이기는 게임 시스템이다. 카드의 공격력과 생명력이 주어지면 어떤 플레이어의 카드가 남아있는지 출력한다. 코드 a1, r1 = map(int, input().split()) a2, r2 = map(int, input().split()) while (True): if (r1
KauKoala
'분류 전체보기' 카테고리의 글 목록 (68 Page)