lv1\_추억 점수\_IndexError: list assignment index out of range
lv1\_콜라문제\_y//x는몫
lv1\_수박수박수박수박수박수
lv1\_부족한 금액 계산하기\_for i in range(0, 1000)\_가우스계산\_max메소드
lv1\_스택큐\_배열에서index범위확인\_음수인덱스\_python에서의 stack 사용법
lv1\_실패율\_count메소드\_딕셔너리\_list에서 최소값/최대값의 index 찾기\_append,extend,insert차이
lv1\_삼총사\_combination모듈\_다시풀어볼것
lv1\_K번째수\_슬라이스(슬라이싱)
lv1\_K번째수\_find메소드\_split메소드\_list안에 if-else for문
lv1\_예산\_list 원소 합 구하기\_누적합 구하기
lv1\_숫자 문자열과 영단어\_replace\_dictionary,list사용해서 배열화 하기
lv1\_모의고사
lv1\_성격 유형 검사하기\_딕셔너리사용
lv1\_3진법 뒤집기\_int(string, 진법)\_reverse메소드(list)\_string 뒤집기\_굳이 뒤집어야하는가?
lv1\_최소직사각형\_2차원 list에서 max값 찾기\_list 안의 수 각각 정렬하기
lv1\_두 개 뽑아서 더하기\_중복값처리\_순열과조합
lv1\_폰켓몬\_min메소드\_set도 len 메소드 사용가능
lv1\_약수의 개수와 덧셈\_약수의 개수가 홀수인 경우\_제곱근\_세제곱근
lv1\_로또의 최고 순위와 최저 순위\_count 메소드\_rank를 list로 처리
lv1\_체육복\_문제를 꼼꼼히 읽어야겠다\_remove 메소드\_if문의 조건을 만족하는 값(r)으로만 리스트를 새로 구성\_다시 풀어볼 문제!!
lv1\_푸드 파이트 대회\_string reverse(뒤집기)
lv1\_가운데 글자 가져오기\_홀수면 -1을 하고 2로 나눈 몫이나 그냥 2로 나눈 몫이 같다. 짝수면 -1을 하고 2로 나눈 몫은 그냥 2로 나눈 몫보다 1이 작다.
lv1/ 문자열 다루기 기본/ isdigit():문자열이 숫자로만 이루어져있는 경우 True 반환/ isdecimal(): 데이터가 int 타입으로 변환이 가능한 숫자인 경우 True 반환/ str.isalpha():문자열이 문자로만 이루어져있는 경우 True 반환
lv1/ 덧칠하기/ point(위치) 옮겨주기
lv1/ 키패드 누르기/ 2차원 list에서 원하는 value의 index 찾기/ 좌표지정, 딕셔너리로 그래프
lv1/ 크기가 작은 부분 문자열
lv1/ 기사단원의 무기/ 시간초과 해결(약수문제)/ for문의 range에는 정수만 가능
lv1/ 옹알이/ 무한루프의 굴레/ 문자열에서 문자 반복적으로 찾기/ replace에서 빈칸이 아니라 ''로 하면 안되는 이유 찾기
lv1/ 시저암호/ 문자(알파벳)순환/ str.isupper/ str.islower()/ ord(문자)/ chr(정수)
lv1/ 시저암호/ str.rfind(finding_str): str에서 finding_str 있는지 뒷부분부터 검색/ enumerate:인덱스와 원소를 동시에 접근하면서 for문/ enumerate에서 시작 인덱스 변경/ 2차원 배열에서의 enumerate
lv1/ 이상한 문자 만들기/ 문자열을 대.소문자로 바꿈/ 지정된 구분 기호를 기준으로 문자열을 분할.
lv1/ 2016년/ 윤년: 2월에 29일 있는 년도/ sum함수
lv1/ 소수찾기/ 시간초과해결-for문의 range 수정/ 아리스토테네스의 체- 자신의 배수는 제거하는 방식
lv1/ 문자열 나누기/ list 범위 확인하기
lv1/ 최대공약수와 최소공배수
lv1/ 문자열 내 마음대로 정렬하기/ 이중 sorted/ sorted에서 key값/ sorted에서 lambda 사용
lv1/ 대충 만든 자판
lv1/ 크레인 인형뽑기 게임/ stack문제
lv1/ 직사각형 별찍기
lv1/ 소수만들기/ 소수 구할때 범위 0이 아니라 2부터/ combination은 tuple 형태로 반환됨
lv1/ 둘만의 암호/ string에서 특정 문자를 제거하는 방법(replace를 사용)
lv1/ 신규 아이디 추천/ strip():문자열 맨 앞과 맨 끝에 있는 필요없는 문자를 삭제/ lstrip,rstrip/ .replace()/ re로 정규식 패턴 문자열 처리하기/ re.sub()/ 정규식에서 .은 \n를 제외한 모든문자를 의미
lv1/ 행렬의 덧셈
lv1/ 카드 뭉치/ index위치 옮겨주기/ stack의 pop 사용
lv1/ 햄버거 만들기/ del list_name[idx]/ del list_name[start_idx:end_idx]/ list도 == 으로 비교할 수 있다
lv1/ 바탕화면 정리/ 변수 초기화시에 주의!!!!
lv1/ 문자열내림차순으로배치하기/ sorted vs sort/ 내림차순 정렬/ 문자열 정렬/ join함수
lv1/ 내적/ zip()/ zip으로 사전 만들기
lv1/ 명예의 전당
lv1/ 과일 장수/ 슬라이싱에서 인덱스 증가폭 설정: 시퀀스객체[시작인덱스:끝인덱스:인덱스증가폭]
lv1/ 개인정보 수집 유효기간/ 날짜비교시 아예 일수로 변환해서 비교/ map(적용시킬 함수, 적용할 값들)/ map 함수의 반환 값은 map객체 이기 때문에 해당 자료형을 list 혹은 tuple로 형 변환해주기
lv1/ 달리기 경주/ list_name.index(찾고싶은내용)/ 중복되는 원소들의 인덱스 모두 찾고 싶을때는 numpy.where/ index함수로 인한 시간초과를 딕셔너리로 해결
lv1/ 공원 산책/ graph에서 범위체크 필수/ for문에서 작은수부터 큰수순인지 확인
lv1/ 신고 결과 받기/ 2차원 리스트 초기화/ 2차원 리스트 초기화시에 주의해야할점/ .index는 시간복잡도가 O(N)/ set으로 중복없애기/ 2차원 list 대신 dictionary
lv1/ 완주하지 못한 선수/ sorting이용/ hash(python 자체에 key 생성해주는 hash 함수 존재)
lv1/ 숫자짝꿍/ int길이를 넘어가는 경우 int형변환을 해주면 시간초과 뜰 수 있음
|문제이름|걸린시간|찾아본내용|알게된내용| |:----:|:----:|:----:|:----:| |제일 작은 수 제거하기|4분|list_name.remove(값)|굳이 sorting 안하고 min으로 제일 작을 수 없앴어도 됐음| |없는 숫자 더하기|1분|| sum(range(10)) - sum(numbers)로 풀었어도 됐음 |핸드폰 번호 가리기|1분| ...
7/5부터 매일 조금씩이라도 풀기를 시작해서 7/23에 lv1 문제를 다 풀었다! 다 푸니 순위가 1/10 정도가 되었다 (뿌듯) 풀면서 느낀점은 내가 c에 익숙해서 자꾸 c코드처럼 작성하곤 한다는 점이다. 그리고 파이썬에는 엄청 많은 함수가 있다는 것도..
lv2/ 최댓값과 최솟값/ map함수/ list 원소들 변형하기
lv2/ JadenCase 문자열 만들기/ str.capitalize()
lv2/ 올바른 괄호/ 괄호는 웬만해서 stack
lv2/ 최솟값 만들기
lv2/ 이진 변환 반복하기/ bin 함수에서 앞에 0b 제거-slicing이용
lv2/ 다음 큰 숫자
lv2/ 피보나치 수
lv2/ 숫자의 표현/ 1부터 num까지의 합부터 num의 배수만큼을 더한수는 num개의 연속된 수로 그 수를 표현할 수 있다
lv2/ 짝지어 제거하기
lv2/ 카펫
lv2/ 영어 끝말잇기/ return바로 안해주면 원하는값 출력되지 않을 수 있음 또는 break걸어줘야함/ idx 범위 꼭 확인해주기
lv2/ 예상 대진표
lv2/ 점프와 순간 이동/ 계속 2로 나누거나 2진법 관련된거 나오면 bin으로 바꾸는걸 한번씩은 생각해보기
lv2/ 괄호 회전하기/ s[i:len(s)]는 s[i:]로도 쓸 수 있다
lv2/ 기능개발
lv2/ 멀리 뛰기/ math모듈-factorial계산/ dp/ 최대한 재귀함수는 쓰지말자
lv2/ 행렬의 곱셈/ 2차원 배열에서 특정 열 추출 - 1)inline for loop 방법, 2)zip 이용
lv2/ 할인 행사/ counter: 컨테이너안의 데이터를 편리하고 빠르게 개수를 세도록 지원하는 계수기 도구
lv2/ 귤 고르기/ binary search/ 리스트에서 빈도수가 가장 높은 요소 출력/ sum안쓰면 시간 줄일 수 ㅇ(점점 더해가는 방식으로)
lv2/ 구명보트/ 단서 잘 챙기기/ pop(0)의 시간복잡도:O(n)/ pop(0)을 대신하는 방법/ greedy algorithm
lv2/ 주차 요금 계산/ 딕셔너리에 키 있는지 확인/ 딕셔너리 원소 삭제/ 딕셔너리 키-값 출력/ 딕셔너리 정렬/ 내림 올림 반올림
lv2/ 튜플/ 문자열 다루기/ 리스트 요소 길이순으로 sorting
lv2/ 뉴스 클러스터링/ 문자열 구성이 알파벳인지 확인/ remove로 지우면 앞에 일치하는 한개만 지워짐/ 교집합,합집합
lv2/ N개의 최소공배수/ list comprehension 구문의 if else 문/ 소인수분해 파이썬 코드
lv2/ 피로도/ 2차원 list에서 각 list의 첫번째값을 기준으로 정렬/ 순열(permutations)
lv2/ 호텔 대실/ list의 n번째 값을 기준으로 정렬 + 조건이 여러개일 경우
lv2/ 주식가격/ dequeue
lv2/ 이모티콘 할인행사/ 중복순열,중복조합
lv2/ 모음사전/ 규칙찾아 풀기
lv2/ 소수 찾기/ 문자열을 한 글자씩 분리하여 리스트에 저장/ 문자열을 한 글자씩 분리하여 int형태로 리스트에 저장/ list로 되어 있는 문자열 데이터들을 설정한 구분자로 구분하여 문자열 형태로 반환
lv2/ 임 맵 최단거리/ bfs의 기본코드.
lv2/ 의상/ 조합이 시간초과날때
lv2/ 전화번호 목록/ string은 정렬하면 각 자리가 작은수부터 정렬/ 문자열이 특정 문자열로 시작or끝나는지 확인
lv3/ 베스트앨범/ key,value 기준으로 오름차순 정렬/ dictionary 2개 만들어서 해결
lv2/ 타겟 넘버
lv2/ H-Index
lv3/ 정수 삼각형/ DP에서도 가지치기
lv3/ 등굣길
1. 입력이 한 줄에 하나씩 들어옴 : input() 함수 💻 Code 🌱* Example* ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 2. 띄어쓰기로 구분되는 N개 값 입력 : input().split() 💻 Code -> 3개라면 a,b,c로 받아주기 🌱* Example* 💡 Info split() 함수를 사용하면 공백,...