목록Algorithm (236)
HTD
www.acmicpc.net/problem/1912 1912번: 연속합 첫째 줄에 정수 n(1 ≤ n ≤ 100,000)이 주어지고 둘째 줄에는 n개의 정수로 이루어진 수열이 주어진다. 수는 -1,000보다 크거나 같고, 1,000보다 작거나 같은 정수이다. www.acmicpc.net N = int(input()) nums=list(map(int, input().split())) dp = [nums[0]] for i in range(1, N): dp.append(max(dp[i-1]+nums[i], nums[i])) print(max(dp))
def getSmallerSumMeterIndex(sumMeter, m): left, right = 0, len(sumMeter)-1 while left m: left = mid + 1 elif sumMeter[mid] == m: return mid return left N, M = map(int, input().split()) heights = list(map(int, input().split())) heights.sort() sumMeter = [] for i in range(N): if i==0: additionalCutHeight = heig..
T = int(input()) for _ in range(T): N = int(input()) scores = [0]*(N+1) for _ in range(N): curDoc, curInt = map(int, input().split()) scores[curDoc] = curInt minInt = scores[1] cntDropout = 0 for i in range(2, N+1): if scores[i] > minInt: cntDropout += 1 else: minInt = scores[i] print(N-cntDropout) 중복이 없는 등수로 입력되므로(1...N) 서류 점수를 index로 하고 인터뷰를 value로 가지는 배열을 만들어서 넣는다. 다음으로, 서류 점수를 의미하는 index를 1부..
N = int(input()) A = list(map(int, input().split())) dpAscend = [0]*N for i in range(N): for j in range(i): if A[i]>A[j] and dpAscend[i]A[j] and dpDescend[i]
SELECT ANIMAL_ID, NAME, DATE_FORMAT(DATETIME, '%Y-%m-%d') AS 날짜 FROM ANIMAL_INS DATE_FORMAT()을 통해 형 변환을 해줍니다.
SELECT INS.ANIMAL_ID, INS.NAME FROM ANIMAL_INS INS, ANIMAL_OUTS OUTS WHERE OUTS.ANIMAL_ID = INS.ANIMAL_ID ORDER BY OUTS.DATETIME - INS.DATETIME DESC LIMIT 2 ORDER BY 구문이 핵심입니다. 보호 기간이 길었을수록 (OUTS.DATETIME - INS.DATETIME)이 커지므로 DESC를 통해 내림차순으로 정렬해줍니다.
SELECT ANIMAL_ID, NAME, CASE WHEN SEX_UPON_INTAKE LIKE "%Neutered%" OR SEX_UPON_INTAKE LIKE "%Spayed%" THEN "O" ELSE "X" END AS "중성화" FROM ANIMAL_INS CASE - WHEN - ELSE - END로 경우에 따라 "O"와 "X"로 나눈 뒤, AS를 통해 "중성화"라는 컬럼으로 조회하도록 해줍니다.
SELECT ANIMAL_ID, NAME FROM ANIMAL_INS WHERE NAME like '%el%' AND ANIMAL_TYPE='Dog' ORDER BY NAME WHERE절이 핵심입니다. %는 글자수와 상관 없는 조건이며, -는 글자수의 영향을 받습니다. 가령 'Cellular'이라는 문자열을 두고 고려해보았을 때, '%el%'는 불러오겠지만, '-el-'은 불러오지 않습니다. '-el-----'을 쓸 경우에는 조회합니다.