전체 글
-
10799. [Python]쇠막대기Python_알고리즘/Silver II 2023. 2. 13. 00:44
1. 문제 https://www.acmicpc.net/problem/10799 10799번: 쇠막대기 여러 개의 쇠막대기를 레이저로 절단하려고 한다. 효율적인 작업을 위해서 쇠막대기를 아래에서 위로 겹쳐 놓고, 레이저를 위에서 수직으로 발사하여 쇠막대기들을 자른다. 쇠막대기와 레이저 www.acmicpc.net 2. 접근 방법 시간 제한: 1초 메모리 제한: 256MB 스택 3. 파이썬 코드 # input 문자열 info = input() # 문자를 담을 리스트 stack = [] # 갯수 체크 cnt = 0 # enumerate 로 index와 value 값을 가져옴 for i,v in enumerate(info): # 여는 괄호일 경우 if v == "(": # 스택에 index 값 추가 stack...
-
1463. [Python]1로 만들기Python_알고리즘/Silver III 2023. 2. 11. 22:51
1. 문제 https://www.acmicpc.net/problem/1463 1463번: 1로 만들기 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. www.acmicpc.net 2. 접근 방법 시간 제한: 0.15초 (python 3 => 1.5초) 메모리 제한: 128MB DP(Dynamic Programming) 3. 파이썬 코드 def answer(num): # 0, 1 인 경우는 count 되는 값이 없어서 0 # 2, 3 인 경우는 한번씩 나누는 값 1이다. # 외의 10^6 까지 값이 존재하므로 10^6+1 갯수 리스트 생성 num_list = [0,0,1,1] + [0]*(10**6-2) # 4부터 시작하는 반복문 생셩 for i in range(4, 10**6..
-
3.6 장React/실전 리액트 프로그래밍 2023. 2. 10. 21:30
3.6 리액트 내장 훅 살펴보기 다양한 내장된 훅들을 제공한다. 3.6.1 Consumer 컴포넌트 없이 콘텍스트 사용하기 : useContext ContextAPI에서 Consumer 사용없이 Provider로 부터 전달된 값을 사용할 수 있다. function Childcomponent() { const user = useContext(UserContext) } 사용하기 간편한 장점이 있다. 3.6.2 렌더링과 무관한 값 저장하기 : useRef 컴포넌트 내부에서 생성되는 값 중 렌더링과 무관한 현재 쓰지않는 값을 저장한 후 나중에 사용하기 위해 사용한다. 이전 상태를 저장했다가 원하는 곳에 사용하는데 사용됨. 3.6.3 메모제이션 훅 : useMemo, useCallback useMemo 와 use..
-
3.5 장React/실전 리액트 프로그래밍 2023. 2. 10. 21:25
3.5 Ref 속성값으로 자식 요소에 접근하기 돔 요소에 직접 접근해야 할 때 사용한다. Ref(Reference)를 사용하면 자식 요소에 직접 접근할 수 있고, 요소에 포커스를 주거나 요소의 크기 및 스크롤 위치 등을 알 수 있다. 3.5.1 ref 속성값 이해하기 function TextInput() { const inputRef = useRef; useEffect(() => { inputRef.current.focus(); }, []); return ( 저장 ); } useRef 훅을 사용하여 반환된 ref 객체를 통해 자식 요소의 ref 속성값에 객체를 넣는다. 돔 요소 혹은 컴포넌트가 생성되면 ref 객체로 접근이 가능하다. 컴포넌트의 렌더링 결과가 돔에 반영된 후에 호출해오기 때문에 이미 요소..
-
2869. [Python]달팽이는 올라가고 싶다.Python_알고리즘/Bronze I 2023. 2. 10. 21:23
1. 문제 https://www.acmicpc.net/problem/2869 2869번: 달팽이는 올라가고 싶다 첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000) www.acmicpc.net 2. 접근 방법 시간 제한: 0.25초 메모리 제한: 128MB 규칙 찾기 3. 파이썬 코드 import math # 하루에 오르는 높이, 내려가는 높이, 정상의 높이를 변수로 받음 A, B, V = map(int,input().split()) # 오르고 내려오는 높이의 차이가 1인 경우 최종 높이에서 내려오는 높이를 뺴준 값이 답이된다. if (A-B) == 1: print(V-B) # 그 외의 경우 정상 높이에서 오를 수 있는 오전에 오를 ..
-
2493. [Python]탑Python_알고리즘/Gold V 2023. 2. 6. 21:13
1. 문제 https://www.acmicpc.net/problem/2493 2493번: 탑 첫째 줄에 탑의 수를 나타내는 정수 N이 주어진다. N은 1 이상 500,000 이하이다. 둘째 줄에는 N개의 탑들의 높이가 직선상에 놓인 순서대로 하나의 빈칸을 사이에 두고 주어진다. 탑들의 높이는 1 www.acmicpc.net 2. 접근 방법 시간 제한: 1.5초 메모리 제한: 128MB 스택 3. 파이썬 코드 # 정답 코드 import sys input = sys.stdin.readline N = int(input()) # 타워들의 리스트를 받아옴 tower_list = list(map(int,input().split())) # 정답을 출력할 리스트 생성 ans_list = [0]*N # stack 리스트..
-
2579. [Python]계단 오르기Python_알고리즘/Silver III 2023. 2. 6. 01:21
1. 문제 https://www.acmicpc.net/problem/2579 2579번: 계단 오르기 계단 오르기 게임은 계단 아래 시작점부터 계단 꼭대기에 위치한 도착점까지 가는 게임이다. 과 같이 각각의 계단에는 일정한 점수가 쓰여 있는데 계단을 밟으면 그 계단에 쓰여 있는 점 www.acmicpc.net 2. 접근 방법 시간 제한: 1초 메모리 제한: 128MB 규칙 파악 DP 3. 파이썬 코드 N = int(input()) # 계단의 값 리스트 배열 생성 work_list = [0] # 각 계단의 최대값 저장 배열 생성 max_list = [0]*301 # 계단의 값 추가 for _ in range(N): work_list.append(int(input())) # 계단의 최대 칸 수만큼 반복문 시..
-
17413. [Python]단어 뒤집기 2Python_알고리즘/Silver III 2023. 2. 5. 00:27
1. 문제 https://www.acmicpc.net/problem/17413 17413번: 단어 뒤집기 2 문자열 S가 주어졌을 때, 이 문자열에서 단어만 뒤집으려고 한다. 먼저, 문자열 S는 아래와과 같은 규칙을 지킨다. 알파벳 소문자('a'-'z'), 숫자('0'-'9'), 공백(' '), 특수 문자('')로만 이루어져 www.acmicpc.net 2. 접근 방법 시간 제한: 1초 메모리 제한: 512MB 스택(원래라면) 문자열 3. 파이썬 코드 word = input() # 단어들을 문자열 합칠 변수 words = "" # 거꾸로된 단어를 합칠 변수 reverse_word = "" # 태그들을 담을 변수 tag = "" # 태그인지 판단할 변수 check = 0 # 모든 값들들을 담을 리스트 wo..
-
2578. [Python]빙고Python_알고리즘/Silver IV 2023. 2. 5. 00:16
1. 문제 https://www.acmicpc.net/problem/2578 2578번: 빙고 첫째 줄부터 다섯째 줄까지 빙고판에 쓰여진 수가 가장 위 가로줄부터 차례대로 한 줄에 다섯 개씩 빈 칸을 사이에 두고 주어진다. 여섯째 줄부터 열째 줄까지 사회자가 부르는 수가 차례대로 www.acmicpc.net 2. 접근 방법 시간 제한: 1초 메모리 제한: 128MB 구현 3. 파이썬 코드 # 내 빙고 my_bingo = [ list(map(str,input().split())) for _ in range(5)] # 사회자가 부르는 빙고 ans_bingo = [ list(map(str,input().split())) for _ in range(5)] # bingo 일치하는 값 저장 리스트 bingo_lis..
-
3.4장React/실전 리액트 프로그래밍 2023. 2. 4. 00:05
3.4 콘텍스트 API로 데이터 전달하기 상위 컴포넌트에서 하위 컴포넌트로 데이터를 전달하기 위해서 속성값이 사용된다. 상위 컴포넌트에서 내가 가고싶은 하위 컴포넌트까지 전달하는데 중간에 거치는 컴포넌트에서도 불필요하게 속성값이 들어가는 무의미한 경우가 발생한다. 이를 방지하기 위해 콘텍스트 API를 이용하여 중첩 구조가 복잡한 상황에서도 원하는 컴포넌트에 쉽게 데이터를 전달할 수 있다. 3.4.1 콘텍스트 API 이해하기 콘텍스트 API를 이용하면 중간에 다른 컴포넌트가 개입하지 않아도 속성값을 전달할 수 있다. const UserContext = React.createContext(""); function App() { return ( 상단 메뉴 하단 메뉴 ); } function Profile() ..