일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- webpack
- 동기
- https://m.blog.naver.com/tt2t2am1118/221010125300
- object
- Import
- execCommand
- sql
- js
- promise
- await
- 혼프
- async
- json
- addEventListener
- Project
- JS #프로젝트
- db
- Porject
- mysql
- 게임
- eport
- setTimeout()
- database
- 비동기
- slow and steady
- https://youtube.com/playlist?list=PLuHgQVnccGMA5836CvWfieEQy0T0ov6Jh&si=FTaYv8m21EhO-A2K
- callback
- ajax
- 참고블로그
- prj
- Today
- Total
목록분류 전체보기 (313)
C-log

처음에 작성한 코드는 아래와 같다. 이중 for문을 사용해서 선정한 부분을 뒤집는 방법을 생각했다. 왜 이렇게 생각했는지 스스로가 분석하고 파악할 필요가 있다. N, M = map(int, input().split()) basket = [] for _ in range(N): basket.append(_+1) for _ in range(M): i, j = map(int, input().split()) for r in range(i-1, j): new_basket = basket[r] print(new_basket) basket[r] = new_basket print(basket) print(basket) 구글링을 해서 list 슬라이스(slice) 방법을 고안해서 작성한 코드는 아래와 같다. N, M = ..

배열 즉, 리스트를 이용해서 나머지 값의 집합을 찾아내는 방법이다. 다만 중복되는 값을 제외한 나머지 개수를 알아 내면 된다. 처음에 작성한 방법은 아래와 같았다. if문의 식이 잘못되어 있다. 42를 나눈 나머지의 값들이 0이 아닐때만 리스트에 추가하게 되어 있다. 이는 나머지 값들의 중복을 알아 낼 수 없는 방법이다. remain_list = [] for _ in range(10): N = int(input()) remain = N % 42 # remain_list.append(remain) if not remain == 0: remain_list.append(remain) print(len(remain_list)) 그래서 구글링을 통해 알게된 것은 in을 사용하는 것이다. 아래는 수정된 코드이다. ..

def make_change(coins, amount): coins.sort(reverse=True) print(coins) # 25,10,5,1 # reverse = True이면 오름차순이다. # coins의 정렬을 오름차순으로 진행 한다. change = [] for coin in coins: while amount >= coin: # amount가 coin보다 같거나 크다면 change.append(coin) print(change) # # 해당 코인을 리스트에 추가하고 제외(뺄셈)하고 남은 amount에서 값을 다시 돌린다. 이때 while문의 조건인 amount보다 coin이 클경우 특정 코인 종류에서 계속해서 특정 코인의 값이 차감된다. 이후 amount가 특정 코인 보다 작아지면 그 다음 코..

알고리즘에서 기본으로 알고 있어야 할 개념 중 하나인 스택은 LIFO의 구조를 띄고 있다. 아래 코드를 통해 구현된 stack과 동작 원리를 이해하자.class Stack: def __init__(self) -> None: self.stack = [] def is_empty(self): return len(self.stack) == 0 def is_push(self, item): self.stack.append(item) def is_pop(self): if not self.is_empty(): return self.stack.pop() else: return None def ..

for문을 사용한다. 일반적으로 사용하는 형태가 아니라 특정 index를 지정해서 문제를 해결한다. 그러기 위해서 range()함수의 매개변수를 정확히 알아야한다. range의 매개변수는 세가지로 나누어 볼 수 있다. range(a,b,c)로 구분해서 사용하는데 a는 start이고 b는 end이며 c는 step이다. 이를 활용해서 2349번 백준 문제를 풀 수 있다. 코드는 아래와 같다. n = int(input()) # 행의 수를 나타내는 변수, 원하는 크기로 변경 가능 for i in range(n): for j in range(n - i - 1): # start,end,step print(" ", end="") for k in range(i + 1): print("*", end="") print()..

처음에 생각한 코드는 정말 단순하게 생각을 했다. 코드를 작성하면서도 이건 런타임에러나 오류를 발생 시키지 않을까 의구심을 품었다. while True: A, B = map(int, input().split()) print(A + B) 당연히 결과는 런타임에러였고 어떻게 해야할지 몰랐다. 사실상 디버깅을해서 코드를 실행하면 정상적으로 작동은 한다. 하지만 A,B에 정수가 입력되지 않으면 발생하는 오류를 처리하지 못한다. 이를 방지하기 위한 방법은 try/except문을 사용하는 것이다. try/except는 예외 상황이 발생했을 때 사용하는 코드이다. 즉, 무한루프를 방지하는 것이 아니라 A,B에 입력된 값이 올바르지 않을 때의 예외를 처리하는 방식인 것이다. 무한루프는 오류나 예외적인 것이 아니다. 단..

import sys T = int(input()) for i in range(T): A, B = map(int, sys.stdin.readline().split()) print(A+B) input을 사용하지 않고 import sys를 통해서 값을 받아 올 수 있다. testcase는 기존의 input으로 작성해도 런타임, 시간초과가 일어 나지 않는다. testcase T변수를 input이 아닌 sys.stdin.readline()으로 작성하면 아래와 같다. import sys # T = int(input()) T = int(sys.stdin.readline().strip()) # strip()함수를 사용함으로 개행문자 /n을 제거할 수 있다. for i in range(T): A, B = map(int,..

import sys T = int(input()) for i in range(T): A, B = map(int, sys.stdin.readline().split()) print(A+B) input을 사용하지 않고 import sys를 통해서 값을 받아 올 수 있다. testcase는 기존의 input으로 작성해도 런타임, 시간초과가 일어 나지 않는다. testcase T변수를 input이 아닌 sys.stdin.readline()으로 작성하면 아래와 같다. import sys # T = int(input()) T = int(sys.stdin.readline().strip()) # strip()함수를 사용함으로 개행문자 /n을 제거할 수 있다. for i in range(T): A, B = map(int,..