전체 글

파이썬에서는 프로그램 수행 시간과 메모리 사용량을 측정할 수 있다. import time start_time = time.time() # 프로그램 소스코드 end_time = time.time() print('time :', end_time - start_time) # 수행 시간 출력 어떤 알고리즘을 설계한 뒤에 시간 복잡도를 경험적으로 증명하고 싶을 때는 위와 같은 형태의 코드를 자주 이용한다. 예시) from random import randint import time # 배열에 10,000개의 정수를 삽입 array = [] for _ in range(10000): array.append(randint(1, 100)) # 1부터 100 사이의 랜덤한 정수 # 선택 정렬 프로그램 성능 측정 start..
pickle : 객체 파일 읽기, 쓰기 import pickle # (쓰기) f = open("test.obj", 'wb') obj = {1: 'python', 2:'study', 3:'basic'} pickle.dump(obj, f) f.close() # (읽기) f = open('test.obj', 'rb') data = pickle.load(f) print(data, type(data)) # {1: 'python', 2: 'study', 3: 'basic'} f.close() os : 환경 변수, 디렉터리(파일) 처리 관련, 운영체제 작업 관련 # mkdir, rmdir(비어 있으면 삭제), rename import os print(os.environ) print(os.environ["USERNAM..
abs() : 절대값 print(abs(-3)) # 3 all() : Iterable 요소 검사(참, 거짓)(and) print(all([1,2,''])) # False print(all([1,2,3,0])) # False any() : Iterable 요소 검사(or) print(any([1,2,''])) # True print(any([1,2,3,0])) # True chr() : 아스키 -> 문자 ord() : 문자 -> 아스키 print(chr(67)) # C print(ord('C')) # 67 enumberate() : 인덱스 + Iterable 객체 생성 for i, name in enumerate(['abc','bcd','efg']): print(i + 1, name) # 1 abc # 2..
https://school.programmers.co.kr/learn/courses/30/lessons/49993#fn1 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.List; class Solution { public int solution(String skill, String[] skill_trees) { int answer = 0; char[] chars = skill.t..
https://school.programmers.co.kr/learn/courses/30/lessons/138476 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr import java.util.*; class Solution { public int solution(int k, int[] tangerine) { int answer = 0; Map map = new HashMap(); for(int t : tangerine) { map.put(t, map.getOrDefault(t, 0) + 1); } ArrayList entryList = new Array..
class Solution { public String solution(int n, int t, int m, int p) { StringBuilder sb = new StringBuilder(); for(int i = 0; i < m * t; i ++){ sb.append(binaryConversion(i, n)); } StringBuilder answer = new StringBuilder(); int start = p - 1; for(int i = 0; i < sb.length(); i ++){ answer.append(sb.charAt(start)); if(answer.length() == t) break; start += m; } return answer.toString(); } private S..
솜사탕코튼
개발일기