분류 전체보기

·Algorithm (PS)
다이나믹 프로그래밍은 전형적으로 보텀업 방식 형태를 보인다. 그렇지만 탑다운 방식과 보텀업 방식의 차이를 알아볼 필요가 있다. 상향식, 하향식에 따라 재귀호출인지 반복호출인지의 차이도 보여지기 때문이다. 1. 탑다운 방식 (Top-down) 재귀 함수를 이용하여 DP를 작성하는 방법. 큰 문제를 해결하기 위해 작은 문제를 호출한다. d = [0] * 100 def fibo(x): print('f(' + str(x) + ')', end=' ') if x == 1 or x == 2: return 1 if d[x] != 0: # 이미 계산한 적 있으면 그대로 값을 반환한다. return d[x] d[x] = fibo(x-1) + fibo(x-2) return d[x] * 실행 결과 f(10)을 구하기 위해서 ..
1. Stack 스택 자료구조 선입후출 (First In Last Out) 구조 stack = [] stack.append(1) # push 를 append()로 구현한다. stack.append(2) stack.append(3) stack.pop() stack.append(4) print(stack) # 스택의 가장 밑에 있는 원소부터 출력 print(stack[::-1]) # 스택 가장 위에 있는 원소부터 출력 [1, 2, 4] [4, 2, 1] 파이썬에서 stack 자료구조를 구현하기 위해서는 이렇게 다른 라이브러리가 필요없이, list 구조에서 append()와 pop()으로 간단히 구현할 수 있다. 2. Queue 큐 자료구조 선입선출 (First In First Out) 구조 , 나중에 온 사..
array = [1,2,3,4,5] print(array) print(array[::-1])
·Algorithm (PS)
https://www.acmicpc.net/problem/1476 1476번: 날짜 계산 준규가 사는 나라는 우리가 사용하는 연도와 다른 방식을 이용한다. 준규가 사는 나라에서는 수 3개를 이용해서 연도를 나타낸다. 각각의 수는 지구, 태양, 그리고 달을 나타낸다. 지구를 나타 www.acmicpc.net 간단한 구현문제 ! 초기값을 1 1 1 이라고 가정하고 우리가 구하고자 하는 준규네 나라의 날짜와 같은 e s m이 나올때 까지 하나씩 더해가면서 값을 비교한다 e, s, m = map(int, input().split()) a, b, c = 1, 1, 1 # 초기값 count = 1 while True: if a == e and b == s and c == m: print(count) break if..
는 내가 보려고 정리... !!!!! 올해 취업하려구욧 다우기술(키움SM 기준) / 다우키움그룹> 계약: 4800만(올해 개발직군 1000만 상승) 성과급: 960만(2년차부터 키움SM 기준 연봉 20%, 그 외는 10%만) 복지포인트: 200만 명절귀향여비: 20만(각 상품권 10만씩) 휴가비: 30만 생일쿠폰: 3만 +복날 선물: 10만 계약: 4700만 PI/PS: 940만(평고과20%기준, 평고과13~30%사이) 중식대: 144만(월 12만) 복지포인트: 100만 개인연금지원금: 110만(연차 따라 250만까지 상승) +오픽응시: 연 2회 지원(15만원 가량) ※참고: 2년차부터 고성과자 프리미엄인센티브 3~15프로 ※참고: 자격증지원금 연 2회 100만원 지원(합격해야함) ※참고: 의료비 1만원..
·Algorithm (PS)
유형 : 구현 https://www.acmicpc.net/problem/14503 14503번: 로봇 청소기 로봇 청소기가 주어졌을 때, 청소하는 영역의 개수를 구하는 프로그램을 작성하시오. 로봇 청소기가 있는 장소는 N×M 크기의 직사각형으로 나타낼 수 있으며, 1×1크기의 정사각형 칸으로 나누어 www.acmicpc.net 이 문제에서 어렵다고 느껴졌던 점은 바라보는 '방향'도 고려해서 새로운 좌표로 이동시키는 것이었다. 현재 바라보는 방향을 t라고 이름붙이겠다. 옆의 그림과 같이, 문제에서 북-동-남-서 순서대로 바라보는 방향을 지정했다. 그리고 북쪽을 바라보는 상황에서 앞으로 한칸 전진하면 서쪽, 동쪽을 바라보는 상황에서 앞으로 한칸 전진하면 북쪽, 남쪽을 바라보는 상황에서 앞으로 한칸 전진하면 ..
·Algorithm (PS)
https://www.acmicpc.net/problem/1339 1339번: 단어 수학 첫째 줄에 단어의 개수 N(1 ≤ N ≤ 10)이 주어진다. 둘째 줄부터 N개의 줄에 단어가 한 줄에 하나씩 주어진다. 단어는 알파벳 대문자로만 이루어져있다. 모든 단어에 포함되어 있는 알파벳은 최대 www.acmicpc.net 문제! 이 문제는 그리디 유형이다 알파벳 중에서 가중치가 높은 순서대로 9 8 7 ~ 0 숫자를 부여해주어야 하기 때문이다. 가중치는 자리수 !!! 라고 생각하면 된다 그러면 쉽게 풀린다 예를들어 입력으로 GCF ACDEB 가 입력되었으면 A는 만의 자리이므로 10000 라는 가중치를 가지게 되고 C의경우는 첫번째 단어에서는 10 , 두번째 단어에서는 1000 이므로 총 1010 라는 가중치..
·Algorithm (PS)
유형 : 그리디 a[0]*b[0] + a[1]*b[1] + ... + a[n-1]*b[n-1] 의 최소값을 구하는 것이고 사실 문제에서는 a배열만 바꾸고 b배열은 순서 냅둬! 라고 했지만 우리는 최소값만 구해서 출력해주면 되므로...^^ 사실 a배열 순서도 움직여줘도 상관없다 ㅋㅋ a를 오름차순 b를 내림차순 정렬한 후에 각각의 원소들을 for문안에서 곱한 값들을 더해주면 된다 !
minjiwoo
'분류 전체보기' 카테고리의 글 목록 (71 Page)