분류 전체보기 80

백준 2003) 수들의 합2 (python)

https://www.acmicpc.net/problem/2003 2003번: 수들의 합 2 첫째 줄에 N(1 ≤ N ≤ 10,000), M(1 ≤ M ≤ 300,000,000)이 주어진다. 다음 줄에는 A[1], A[2], …, A[N]이 공백으로 분리되어 주어진다. 각각의 A[x]는 30,000을 넘지 않는 자연수이다. www.acmicpc.net n, m = map(int, input().split()) a = list(map(int, input().split())) sum = a[0] left = 0 right = 1 cnt = 0 while True: if sum < m: if right < n: sum += a[right] right += 1 else: break elif sum == m: c..

백준 22862) 가장 긴 짝수 연속한 부분 수열 (large)

https://www.acmicpc.net/problem/22862 22862번: 가장 긴 짝수 연속한 부분 수열 (large) 수열 $S$에서 최대 $K$번 원소를 삭제한 수열에서 짝수로 이루어져 있는 연속한 부분 수열 중 가장 긴 길이를 출력한다. www.acmicpc.net n,k =map(int,input().split()) S = list(map(int, input().split())) lt = 0 rt = 0 cnt, res = 0, 0 while rt k: if S[lt] %2 ==1 : cnt -=1 lt +=1 continue else: if S[rt] %2 ==1 : cnt +=1 rt +=1 res = max(res, rt -lt -cnt) print(res)..

백준 5525) IOIOI (python)

https://www.acmicpc.net/problem/5525 5525번: IOIOI N+1개의 I와 N개의 O로 이루어져 있으면, I와 O이 교대로 나오는 문자열을 PN이라고 한다. P1 IOI P2 IOIOI P3 IOIOIOI PN IOIOI...OI (O가 N개) I와 O로만 이루어진 문자열 S와 정수 N이 주어졌을 때, S안에 PN이 몇 www.acmicpc.net import sys input = sys.stdin.readline n = int(input()) m = int(input()) S = input().rstrip() i = 0 cnt = 0 answer = 0 while i < (m - 1): if S[i : i+3] == 'IOI': i += 2 cnt += 1 if cnt =..

백준 1495) 기타리스트 (python)

https://www.acmicpc.net/problem/1495 1495번: 기타리스트 첫째 줄에 N, S, M이 주어진다. (1 ≤ N ≤ 50, 1 ≤ M ≤ 1,000, 0 ≤ S ≤ M) 둘째 줄에는 각 곡이 시작하기 전에 줄 수 있는 볼륨의 차이가 주어진다. 이 값은 1보다 크거나 같고, M보다 작거나 같다. www.acmicpc.net n,s,m = map(int,input().split()) v = list(map(int,input().split())) dp = [[0]*(m+1) for _ in range(n+1)] dp[0][s] = 1 for i in range(n): for j in range(m+1): if dp[i][j] == 1: n1 = v[i] + j n2 = j - v[i..

백준 19583) 싸이버 개강 총회 (python)

https://www.acmicpc.net/problem/19583 19583번: 싸이버개강총회 첫번째 줄에는 개강총회를 시작한 시간 S, 개강총회를 끝낸 시간 E, 개강총회 스트리밍을 끝낸 시간 Q가 주어진다. (00:00 ≤ S < E < Q ≤ 23:59) 각 시간은 HH:MM의 형식으로 주어진다. 두번째 줄부터는 www.acmicpc.net import sys input = sys.stdin.readline S,E,Q = input().split() S = int(S[:2])*60 + int(S[3:]) E = int(E[:2])*60 + int(E[3:]) Q = int(Q[:2])*60+ int(Q[3:]) res = set() result = 0 while True: try: time, na..

[프로그래머스 lv2] 후보키 (python)

https://school.programmers.co.kr/learn/courses/30/lessons/42890 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr from itertools import combinations def solution(relations): answer = 0 n,m =len(relations), len(relations[0]) candidates = [] for i in range(1,m+1): candidates.extend(combinations([x for x in range(m)],i)) unique = [] for c..

백준 15686) 치킨 배달 (python)

https://www.acmicpc.net/problem/15686 15686번: 치킨 배달 크기가 N×N인 도시가 있다. 도시는 1×1크기의 칸으로 나누어져 있다. 도시의 각 칸은 빈 칸, 치킨집, 집 중 하나이다. 도시의 칸은 (r, c)와 같은 형태로 나타내고, r행 c열 또는 위에서부터 r번째 칸 www.acmicpc.net from itertools import combinations n,m = map(int, input().split()) chicken, house = [], [] for r in range(n): arr = list(map(int,input().split())) for c in range(n): if arr[c] == 1: house.append((r,c)) elif arr[..

카테고리 없음 2024.02.26

백준 3190) 뱀 (python)

https://www.acmicpc.net/problem/3190 3190번: 뱀 'Dummy' 라는 도스게임이 있다. 이 게임에는 뱀이 나와서 기어다니는데, 사과를 먹으면 뱀 길이가 늘어난다. 뱀이 이리저리 기어다니다가 벽 또는 자기자신의 몸과 부딪히면 게임이 끝난다. 게임 www.acmicpc.net n = int(input()) k = int(input()) #사과개수 arr = [[0]*(n+1) for _ in range(n+1)] for _ in range(k): x,y = map(int, input().split()) arr[x][y] = 1 L = int(input()) info = [] for _ in range(L): X,C = map(str, input().split()) info.a..

[스프링 핵심원리 - 기본편] 섹션8. 빈 생명주기 콜백

빈 생명주기 콜백 시작 커넥션 풀이나, 네트워크 소켓과 같은 애플리케이션 시작 시점에 필요한 연결을 미리 하고, 종료 시점에 연결을 모두 종료하는 작업을 진행하려면 객체의 초기화와 종료 작업이 필요함. 스프링 빈의 라이프 사이클 객체 생성 → 의존관계 주입 객체를 생성하고, 의존관계 주입이 끝나 다음에 데이터 사용할 준비가 완료 스프링은 의존관계 주입이 완료되면 스프링 빈에게 콜백 메서드를 통해 초기화 시점을 알려주는 다양한 기능을 제공 스프링은 스프링컨테이너가 종료되기 직전에 소멸 콜백을 줌 스프링 빈의 이벤트 라이프사이클 스프링컨테이너생성 → 스프링빈생성 → 의존관계주입 → 초기화콜백 사용 → 소멸전콜백 → 스프링 종료 초기화 콜백 : 빈이 생성되고, 빈 의존관계 주입 완료된 후 호출 소멸전 콜백 :..

🍎 Backend/Spring 2024.02.23

[JAVA] 해시 맵

해시(Hash) 해시(Hash)는 입력 데이터를 고정된 길이의 데이터로 변환된 값 해시 값(Hash value), 해시 코드, 체크섬 정수로 변환된 해시는 배열의 인덱스, 위치, 데이터값을 검색할때 활용 해시함수(hash function) 데이터의 효율적 관리를 목적으로 임의의 길이의 데이터를 고정된 길이의 데이터로 매핑하는 함수 해시 함수(Hash function)는 입력받은 데이터를 해시 값으로 출력시키는 알고리즘 자료구조, 캐시, 검색, 에러 검출, 암호 등으로 유용하게 사용 // 해시 함수 예시 Integer hashFunction(String key) { return (int)(key.charAt(0)) % 100; } 해시 테이블(Hash Table) 키 값의 연산에 의해 직접 접근이 가능한 ..

🍎 Backend/JAVA 2023.12.11