일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- sqld
- 데이터베이스
- 그리디
- oracle
- 에러
- 백준
- SQL
- Java
- django
- 나동빈님
- 개발자
- Python
- 프로그래머스
- oraclddb
- git
- ADSP #빅데이터
- intellij
- 정렬
- 역량검사후기
- 네트워크
- 알고리즘
- 인프라엔지니어
- 데이터
- 취준
- 코테
- 나동빈
- AI후기
- 파이썬
- 코딩테스트
- db
- Today
- Total
목록python/Algorithm (10)
CloudOps Chronicles

https://www.acmicpc.net/problem/14916 14916번: 거스름돈 첫째 줄에 거스름돈 액수 n(1 ≤ n ≤ 100,000)이 주어진다. www.acmicpc.net n = int(input()) count = 0 while n>0: if n%5 == 0: count+=n//5 break n -= 2 count += 1 if n

https://www.acmicpc.net/problem/11399 11399번: ATM 첫째 줄에 사람의 수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄에는 각 사람이 돈을 인출하는데 걸리는 시간 Pi가 주어진다. (1 ≤ Pi ≤ 1,000) www.acmicpc.net n = int(input()) p = list(map(int,input().split())) p.sort() count = 0 for i in range(1,n+1): count+=sum(p[:i]) print(count) 걸리는 시간을 최소로 정렬 후 , 다 더했다!!!

https://www.acmicpc.net/problem/11508 11508번: 2+1 세일 KSG 편의점에서는 과일우유, 드링킹요구르트 등의 유제품을 '2+1 세일'하는 행사를 하고 있습니다. KSG 편의점에서 유제품 3개를 한 번에 산다면 그중에서 가장 싼 것은 무료로 지불하고 나머지 두 www.acmicpc.net from sys import stdin n = int(input()) m = list(map(int,stdin.read().split())) m.sort(reverse = True) count = 0 for i in range(n): if(i%3!=2): count += m[i] print(count) input으로 하면 런타임에러가 났다 ㅠㅠ 조건문이 왜이렇게 헷갈리는지 ~~ 너무나 ..

https://www.acmicpc.net/problem/7568 7568번: 덩치 우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시된다. 두 사람 A 와 B의 덩 www.acmicpc.net 완전탐색의 문제이다 처음에 풀었을 때 런타임 에러가 났다 ㅠ n = int(input()) data = [] for i in range(n): x, y = map(int, input().split()) data.append((x,y)) for j in data: rank = 1 for z in data: if j[0] < z[0] and j[1] < z[1]: rank+=1 print..
다이나믹 프로그래밍 (동적 계획법) - 메모리를 적절히 사용하여 수행 시간 효율성을 비약적으로 향상시키는 방법 - 이미 계산된 결과는 별도의 메모리 영역에 저장하여 다시 계산하지 않도록 합니다. - 다이나믹 프로그래밍의 구현은 일반적으로 두 가지 방식(탑다운/보텀업)으로 구성됩니다. 다이나믹 프로그래밍은 문제가 다음의 조건을 만족할 떄 사용할 수 있습니다. 1. 최적 부분 구조 큰 문제를 작은 문제로 나눌 수 있으며 작은 문제의 답을 모아서 큰 문제를 해결할 수 있습니다. 2, 중복되는 부분 문제 동일한 작은 문제를 반복적으로 해결해야 합니다. 피보나치 수열 1,1,2,3,5,8,13,21,34,55,89 ... 점화식이란 인접한 항들 사이의 관계식을 의미합니다. 프로그래밍에서는 이러한 수열을 배열이나 ..

그리디 알고리즘 그리디 알고리즘(탐욕법)은 현재 상황에서 지금 당장 좋은 것만 고르는 방법을 의미합니다 일반적인 그리디 알고리즘은 문제를 풀기 위한 최소한의 아이디어를 떠올릴 수 있는 능력을 요구합니다 그리디 해법은 그 정당성 분석이 중요합니다 단순히 가장 좋아 보이는 것을 반복적으로 선택해도 최적의 해를 구할 수 있는지 검토합니다. 거스름돈 문제 거스름돈으로 사용할 500원 100원 50원 10원짜리 동전이 무한히 존재한다고 가정합니다. 손님에게 거슬러 주어야 할 돈이 N원일 때 거슬러 주어야 할 동전의 최소 개수를 구하세요 (단, 거슬러 줘야 할 돈 N은 항상 10의 배수 입니다 최적의 해를 빠르게 구하기 위해서는 가장 큰 화폐단위부터 돈을 거슬러주면 됩니다 가장먼저 500원으로 거슬러 줄 수 있을만..

코딩 테스트에 자주 사용되는 표준 입력 방법 input( ) - 사용자로부터 입력을 받는 함수입니다. 입력한 값은 문자열 형태로 반환됩니다. split( ) - 문자열을 공백으로 분리하는 함수입니다. 이를 통해 입력한 값이 공백을 기준으로 나뉘어 리스트로 반환됩니다. map( ) - 리스트의 각 요소를 정수형으로 변환하는 함수입니다. 이 때, int 함수를 사용하여 문자열을 정수형으로 변환합니다. ex) list ( map(int, input( ).split( ))) 따라서, list(map(int, input().split()))은 사용자로부터 입력 받은 값 중 공백으로 구분된 값을 정수형으로 변환하여 리스트로 저장하는 코드입니다. 예를 들어, "1 2 3 4 5"를 입력하면 [1, 2, 3, 4, 5..

문자열 자료형 문자열 연산 문자열 변수에 덧셈을 이용하면 문자열이 더해져서 연결된다 튜플 자료형 리스트와[ ] 비슷 한번 선언된 값을 변경할 수 없다 튜플의 장점 서로 다른 성질의 데이터를 묶어서 관리해야 할 때 최단 경로 알고리즘에서는 (비용, 노드번호)의 형태로 튜플 자료형을 사용 데이터의 나열을 해싱의 키값으로 사용해야 할때 리스트보다 메모리를 효율적으로 사용해야 할 때 사전자료형 키와 값의 쌍을 데이터로 가지는 자료형 파이썬의 사전 자료형은 해시테이블을 이용하므로 데이터의 조회 및 수정에 있어서 O(1)의 시간에 처리 가능 집합 자료형( set,{ } ) 중복 을 없엔 순서가 없다 리스트 혹은 문자열을 이용해서 초기화 집합연산 합집합 교집합 차집합 사전 자료형과 집합 자료형의 특징 리스트나 튜플은..

복잡도는 알고리즘의 성능을 나타내는 척도 시간 복잡도 - 얼마나 오래걸리는지( 알고리즘을 위해 필요한 연산의 횟수) 공간 복갑도 - 얼마나 많은 메모리를 차지하는지 (알고리즘을 위해 필요한 메모리의 양) 정수형 (우리가 흔하게 쓰는 정수) a=75 print(a) 출력값 75 a=a+5 print(a) 출력값 80 실수형 1e9 = 10의 9제곱(1,000,000,000) ->실수형,임의의 큰 수를 표현 int() 정수데이터로 바꾸어 처리 INF(무한) 왜 False 인지? 컴퓨터는 2진수를 사용하기때문에 완벽하게 답이 나오지 않는다 0.89999는 9가 아니기 때문에 오답! 그렇기때문에 round 함수를 사용한 round 함수(반올림) 수 자료형의 연산 나누기 / 나머지 % 몫 // 거듭제곱 ** 리스..

코딩테스트를 준비하며 처음엔 막막했지만 친구에게 물어물어 나동빈씨의 강의가 괜찮다구 해서 책이랑 같이 블로그에 정리하며 공부해야겠당 https://www.youtube.com/watch?v=m-9pAwq1o3w&t=2629s 이것과 책으로 공부를 시작했다 열심히 해보아야지 이 책은 하루에 3시간 4주동안 마스터 할수있도록 커리큘럼이 되어있다 일단 오늘 하루는 완료이긴한데ㅎㅎ 늘어지지 말고 열심히 해봐야지 나는 Replit+백준으로 하는 중이다 백준이랑 git이랑 연동 하니 잔디관리도 되고 너무 좋음 :>