일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- lazy evaluation
- 하둡에코시스템
- AWS Crawler
- EMR 구조
- 스파크
- 프로그래머스힙
- Spark
- 하둡
- 런타임데이터영역
- Databricks
- Catalyst Optimizer
- kafka 설치
- 데이터 수집
- 서버간 복사
- 프로그래머스 큰 수 만들기
- 하둡1.0
- ORACLE MSSQL차이
- 카프카
- freenom
- 데이터엔지니어링
- ORACLE문법
- 문맥교환
- 빌드도구
- 데이터파이프라인
- Spark 최적화
- 실행엔진
- 하둡2.0
- 프로그래머스
- 데이터베이스복사
- 지연연산
- Today
- Total
목록분류 전체보기 (86)
띵유로그
내 풀이 import math def solution(progresses, speeds): answer = [] days=[] for i in range(len(progresses)): days.append(math.ceil((100-progresses[i])/speeds[i])) days.append(199) stack=[] stack.append(days[0]) for i in range(len(days)-1): if(max(stack)>=days[i+1]): stack.append(days[i+1]) else: answer.append(len(stack)) stack=[] stack.append(days[i+1]) return answer 소요되는 날짜를 계산해두고(days) 스택에 넣는다. 1. ..
파이썬에 아직 익숙하지 않아 다 풀어놓고 잠시 헤메었다. set생성시 변수명을 set으로 두니 local variable 'set' referenced before assignment 오류가 발생했다. ( set=set() ) 파이썬 콘솔(파이썬3.7.1)에서는 해당 오류가 발생하지 않는데 프로그래머스에서 실행하면 발생한다. 변수명을 다르게 설정하니 문제가 해결된것으로 보아 특정 단어를 미리 예약해둔 모양인데 확인해봐야겠다. 여튼,,, 내 풀이는 아래와 같다. def solution(clothes): answer=1 dict_ ={} c_list=set() for i in range(len(clothes)): if clothes[i][1] in dict_.keys(): dict_[clothes[i][1]..
문법을 자꾸 잊어버려 정리한다,,! 정렬) SELECT * FROM 테이블 ORDER BY 컬럼1; SELECT * FROM 테이블 ORDER BY 컬럼1 DESC; => ORDERB BY (띄어쓰기 해주기!) => 여러 칼럼 기준일 때, 괄호 없이 그냥 ' , ' 로 구분 ex) SELECT * from 테이블 ORDER BY 칼럼1, 칼럼2 DESC; -> 칼럼1에대해 오름차순, 칼럼2에대해 내림차순으로 정렬 TOP) -sql server SELECT TOP n FROM 테이블 -MySQL SELECT * FROM 테이블 LIMIT n -오라클 SELECT * FROM 테이블 WHERE ROWNUM having 문 ex) SELECT NAME, COUNT(*) as count from ANIMAL_I..
이 문제의 핵심은 스택에 들어가는 숫자는 감소하면 안된다는 것이다. 만약 이전에 스택에 1,2,3,4,5까지 넣은 적이 있다면 1,2,3,4,5보다 큰 숫자만 들어갈 수 있다. 즉 이미 뺀 숫자가 다시 들어갈 수 없다. 이 경우에는 "NO"를 출력한다. 스택에서 가장 위에 있는 숫자가 지금 빼려는 숫자보다 작다면 빼려는 숫자가 될 때까지 더 숫자를 넣는다. 반대로 가장 위에있는 숫자가 지금 뺴려는 숫자보다 크다면 가장 위가 빼려는 숫자가 될 때까지 빼면 된다. 즉, 지금 빼려는 숫자가 스택의 가장 위쪽에 있도록 만들어 준다. (push,pop을 통해) 주의할 점은 이미 넣었던 숫자는 다시 넣을 수 없다는 것이다. 따라서 지금까지 넣었던 숫자를 기억하기 위해 add변수를 추가한다. 넣으려는 숫자가 스택에서..
#include using namespace std; int coin[10]; int main() { int cnt; int money; scanf("%d %d", &cnt, &money); for (int i = 0; i < cnt; i++) { scanf("%d", &coin[i]); } int j = cnt-1; int ret = 0; while (money != 0&&j!=-1) { ret = ret+ money / coin[j]; money = money % coin[j]; j--; } printf("%d", ret); } tmi) 처음에 while 문 조건에 j!=0이라고해서 틀렸었다. (동전단위저장한 index 0부터 시작이므로 0일떄도 while문 안에 돌아야함)
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 cf) 가장 긴 증가하는 부분 수열(11053) 앞에서부터 부분 길이를 채워나간다. 자신 앞의 (자신보다 작은)원소들 중 길이가 최대인 것을 가져와 +1을 하여 채워나간다. void calc(int num) { sum[1] = 1;//처음 길이는 무조건..