전체 글

컴공 AI 개발자가 되기 위한 노역입니다
1264 번 : 모음의 개수 내 맞은 풀이 def sum(inp): num = 0 for i in list(inp): if i in ('a','e','i','o','u'): num += 1 return num inp = input() while inp != '#': print(sum(inp.lower())) inp = input() 적정 풀이 while True: s = input() if s == '#': break cnt = 0 for c in s: if c in 'aeiouAEIOU': cnt += 1 print(cnt) 굳이 lower() 을 사용하지 않고 풀수 있다 2744 번 : 대소문자 바꾸기 나의 맞은 풀이 inp = input() out = [] for i in list(inp): if ..
[참조 링크] https://pytorch.org/tutorials/intermediate/ddp_tutorial.html : 근데 이렇게 코드 한줄로 일반 데이터 패러렐하는 것의 문제점은 메인 지피유를 설정햇을때 일의 부하가 한 노드로 쏠림! 지피유를 골고루 사용하지 못해서 시간이 느려짐 model = Toy().to(device) # 모델 선언 model = DataParallel(model) # 데이터 패러렐 그래서 나온 개념이 Data Parallel 로, 멀티 지피유(노드4개)를 다 써서 데이터셋을 처리하고 싶다는 취지이다. **** 운영체제 정리(process, thread) **** Program : HDD(hard disk drive)에 코드의 형태로 저장되어있음 Process : cpu에..
Last In First Out (LIFO) : 마지막에 넣은 데이터를 가장 먼저 추출하는 데이터 구조 Push : 데이터를 스택에 넣는 기능 Pop : 데이터를 스택에서 꺼내는 기능 컴퓨터 내부의 프로세스 구조의 함수 동작 방식에 스택이 많이 사용됨 장점 구조가 단순해서 구현을 하기 쉽다. 데이터 저장과 읽기 속도가 빠르다. 단점 일반적인 스택 구현시 데이터 최대 개수를 미리 정해야 한다 (파이썬은 재귀함수를 최대 1000번 사용 가능) 저장공간의 낭비를 발생시킬 수 있다. 파이썬에서는 리스트 기능에서 스택을 사용할 수 있다. stack = [] stack.append(1) # = push stack.append(2) stack.pop() # 파이썬에 존재하는 함수 백준 10828 번 스택 import..
First In First Out (FIFO) 구조 : 가장 먼저 넣은 거를 먼저 꺼낼 수 있는 구조 Enqueue : 큐에 데이터를 넣는 기능 Dequeue : 큐에서 데이터를 꺼내는 기능 파이썬은 queue 라이브러리를 제공한다 : queue.Queue(), LifoQueue(), PriorityQueue() import queue que = queue.Queue() que.put(3) # enqueue que.get() # dequeue que.qsize() # 큐의 사이즈 LifoQueue : 가장 나중에 입력된 데이터가 먼저 출력되는 구조 = 스택 import queue que = queue.LifoQueue() que.put('fuck') PriorityQueue : 데이터마다 우선순위를 붙여..
섬섬옥수수
아날로그 인간의 컴공 되기