배열의 합/ 배열의 길이 를 이용해 평균을 구하면 된다.
2로 나눈 나머지가 0이면 Even 아니면 Odd
새로운 정수를 리턴한다는 조건때문에 int로 형변환했다.
다른 사람은 3번째 줄 for문의 최대값을 n / 2로 정해서 불필요한 계산을 줄였다.
https://school.programmers.co.kr/learn/courses/30/lessons/42748슬라이싱과 정렬을 이용한 문제이다.
https://school.programmers.co.kr/learn/courses/30/lessons/42746?language=python3<입출력 예시1 기준>x 곱하기 3을 할 경우 666, 101010, 222의 첫번째 인덱스 값으로 비교한다.
https://school.programmers.co.kr/learn/courses/30/lessons/42862list끼리 - 연산은 안된다. set으로 하면 차집합 연산 수행set의 remove는 O(1)참고https://rain-bow.tisto
https://school.programmers.co.kr/learn/courses/30/lessons/42860 답 테스트케이스 일부분만 맞은 풀이 커서를 좌우로 이동하는걸 제대로 처리하지 못했다. rfind를 이용해도 같은 알파벳이면 원하는 답이 나오지 않았다.
https://school.programmers.co.kr/learn/courses/30/lessons/12931
https://school.programmers.co.kr/learn/courses/30/lessons/12932str로 형변환 후 뒤집기뒤집은 변수 int로 형변환 후 list로 감싸기
https://school.programmers.co.kr/learn/courses/30/lessons/12925int로 바꾸게 되면 -는 -로, +는 생략되어 자동으로 변환된다.내 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/86491
https://school.programmers.co.kr/learn/courses/30/lessons/12916count 함수를 이용해 p, P, y, Y의 개수를 측정한다.
https://school.programmers.co.kr/learn/courses/30/lessons/12947풀어쓴 답
https://school.programmers.co.kr/learn/courses/30/lessons/12917sorted(s, reverse = True) : s를 내림차순으로 정렬''.join() : 정렬된 문자열을 공백없이 이어붙이기
https://school.programmers.co.kr/learn/courses/30/lessons/12903
https://school.programmers.co.kr/learn/courses/30/lessons/12922내 코드
https://school.programmers.co.kr/learn/courses/30/lessons/12912내 풀이다른 사람 풀이n(n+1)/2 을 이용한 수학적 풀이이다.
https://school.programmers.co.kr/learn/courses/30/lessons/12945
https://school.programmers.co.kr/learn/courses/30/lessons/42747
https://school.programmers.co.kr/learn/courses/30/lessons/42885if문을 충족하면 start, end를 건드려 배열 길이가 2만큼 줄어들고 answer은 1 증가한다.if문을 충족하지 않으면 end만 건드렬 배열
https://school.programmers.co.kr/learn/courses/30/lessons/12934math를 이용한 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/12939
https://school.programmers.co.kr/learn/courses/30/lessons/87389
https://school.programmers.co.kr/learn/courses/30/lessons/1844
https://school.programmers.co.kr/learn/courses/30/lessons/12951capitalize() = 영문자의 문자열 첫 글자는 대문자로 변환하고, 나머지 문자열의 글자는 모두 소문자로 변환하는 함수공백이 여러개인 경우를
https://school.programmers.co.kr/learn/courses/30/lessons/12941
https://school.programmers.co.kr/learn/courses/30/lessons/42842
https://school.programmers.co.kr/learn/courses/30/lessons/87946
https://school.programmers.co.kr/learn/courses/30/lessons/12902<1번>dp8 = dp8 - 2 \* 3<2번>dp8 += dp4 2 + dp2 2<3번>dp8 += 2참고https:
https://school.programmers.co.kr/learn/courses/30/lessons/12973
https://school.programmers.co.kr/learn/courses/30/lessons/12900
https://school.programmers.co.kr/learn/courses/30/lessons/42587
https://school.programmers.co.kr/learn/courses/30/lessons/43162bfs / dfs로 둘 다 풀 수 있다.
https://school.programmers.co.kr/learn/courses/30/lessons/12914처음에 dp를 정의하는 부분을 먼저 작성해서 n = 1인 경우에 런타임 에러가 났다.정의하기 전에 범위가 맞는지 확인하자
https://school.programmers.co.kr/learn/courses/30/lessons/12906
https://school.programmers.co.kr/learn/courses/30/lessons/155652
https://school.programmers.co.kr/learn/courses/30/lessons/42584효율성에서 시간초과가 났다. 참고https://gurumee92.tistory.com/170
https://school.programmers.co.kr/learn/courses/30/lessons/12919
https://school.programmers.co.kr/learn/courses/30/lessons/42897점화식 : 현재 dp = max(바로 전 집까지 훔칠 수 있는 최댓값)와 (전전집까지의 훔칠 수 있는 최댓값 + 현재 집의 money)1번 집을 터
https://school.programmers.co.kr/learn/courses/30/lessons/12981이전 단어랑 이어지는지현재 단어의 첫 문자열(wordsi)과 이전 단어의 마지막 문자열(before_word-1)이 같은지 검사같은 단어를 말했는지
https://school.programmers.co.kr/learn/courses/30/lessons/70129
https://school.programmers.co.kr/learn/courses/30/lessons/43164참고https://gurumee92.tistory.com/165
https://school.programmers.co.kr/learn/courses/30/lessons/86971remove는 인자로 값을 받아서 삭제pop은 인자로 인덱스를 받아서 삭제
https://school.programmers.co.kr/learn/courses/30/lessons/42884카메라 위치가 고속도로에 진입한 지점보다 작을 경우를 체크하고 조건에 맞으면 카메라를 하나 더 설치한다.
https://school.programmers.co.kr/learn/courses/30/lessons/84512itertools로 순열, 조합만 이용해봤지 중복순열은 처음 사용해봤다.공식문서 예시
https://school.programmers.co.kr/learn/courses/30/lessons/42627heapq는 최소힙
좋은 예시는 시간복잡도가 O(n)으로 내 코드보다 효율적이다.
https://school.programmers.co.kr/learn/courses/30/lessons/12953최소공배수는 a, b의 곱을 a, b의 최대 공약수로 나누면 나오게 된다.
https://school.programmers.co.kr/learn/courses/30/lessons/43163?language=python3알파벳 하나만 바꾸는 것을 주의하자.
https://school.programmers.co.kr/learn/courses/30/lessons/12936ex) n = 3, k = 5temp = math.factorial(n) // n를 하면 6 // 3으로 2가 된다.\-> 1,2,3 2,1,3 3
https://school.programmers.co.kr/learn/courses/30/lessons/12954x씩 증가를 위해 1~n까지의 i를 곱했다.
https://school.programmers.co.kr/learn/courses/30/lessons/12948phone_number의 길이 x "\*" + phone_number의 마지막 4자리
https://school.programmers.co.kr/learn/courses/30/lessons/129100으로 나누어 떨어지면 리스트 안에 i를 넣고 정렬한다. 빈 리스트인 경우 -1을 반환한다.return문에서 or의 사용이 생소했는데 이번에 써봐서
https://school.programmers.co.kr/learn/courses/30/lessons/76501?language=python3
https://school.programmers.co.kr/learn/courses/30/lessons/86051다른 사람 답주어진 범위의 합을 더한 것에서 numbers의 합을 뺀다.
https://school.programmers.co.kr/learn/courses/30/lessons/12985짝수인 경우와 홀수인 경우를 나눠서 계산했다.a, b가 홀수이건 짝수이건 1을 더해서 몫으로 나누면 다음 라운드의 번호를 구할 수 있다.
https://school.programmers.co.kr/learn/courses/30/lessons/12918isdigit()문자열이 0을 포함한 양수형 정수로만 이루어져있는지 확인하는 함수실수, 소수의 -, .도 문자열로 판별
https://school.programmers.co.kr/learn/courses/30/lessons/12940최대공약수(math.gcd())는 프로그래머스 환경에서 사용할 수 있지만 최대공약수(math.lcm())는 파이썬 3.9 버전 이상부터 사용할 수
https://school.programmers.co.kr/learn/courses/30/lessons/12915lambda를 이용해 xn은 첫번째 정렬 조건이고 x는 두번째 정렬 조건이다.
https://school.programmers.co.kr/learn/courses/30/lessons/77884숫자가 1인 경우 answer = 1 아니면 1과 자기자신 추가2부터 num의 제곱근의 범위까지 약수를 구한다.약수를 구하고 num // i 일
https://school.programmers.co.kr/learn/courses/30/lessons/12943
https://school.programmers.co.kr/learn/courses/30/lessons/82612내 답을 한 줄로 줄여놨다.등차수열의 합을 이용한 계산
https://school.programmers.co.kr/learn/courses/30/lessons/12926
https://school.programmers.co.kr/learn/courses/30/lessons/147355슬라이싱을 이용해 p의 길이만큼 부분 문자열을 구한 후 값을 비교한다.
https://school.programmers.co.kr/learn/courses/30/lessons/12930split으로 단어별로 분리한 상태에서 구현했다가 테스트케이스에서 거의 다 틀렸다.s에 공백이 연속으로 들어가는 경우를 생각해야한다.
https://school.programmers.co.kr/learn/courses/30/lessons/81301dictionary에 0부터 9까지 값을 할당하고 replace로 변경한다. 딕셔너리의 검색속도가 O(1)이므로 더 나은 코드로 보인다.
https://school.programmers.co.kr/learn/courses/30/lessons/12950for문으로 하나하나 더한다.numpy를 이용해 행렬을 계산하고 list로 변환한다.
https://school.programmers.co.kr/learn/courses/30/lessons/68644combinations으로 경우의 수를 구하고, sum으로 합을 구한다.set으로 중복제거하고 sorted로 정렬한다.
https://school.programmers.co.kr/learn/courses/30/lessons/68935
https://school.programmers.co.kr/learn/courses/30/lessons/132267?language=python3
https://school.programmers.co.kr/learn/courses/30/lessons/12982
https://school.programmers.co.kr/learn/courses/30/lessons/142086
https://school.programmers.co.kr/learn/courses/30/lessons/134240
https://school.programmers.co.kr/learn/courses/30/lessons/176963
https://school.programmers.co.kr/learn/courses/30/lessons/17681이진수로 변환하는 로직을 바꾸니 시간초과가 해결되었다.(테스트 케이스 1, 3번) while문 사용을 지양해야겠다.
https://school.programmers.co.kr/learn/courses/30/lessons/12901
https://school.programmers.co.kr/learn/courses/30/lessons/159994카드 길이를 체크해야 list out of index가 발생하지 않는다.
https://school.programmers.co.kr/learn/courses/30/lessons/138477heapq.nsmallest(k, max_heap)은 max_heap에서 상위 k개의 요소를 반환max()로 k중에 가장 큰 값 반환1을 이용해
https://school.programmers.co.kr/learn/courses/30/lessons/1845중복된 폰켓몬을 제거하는게 핵심이다.
https://school.programmers.co.kr/learn/courses/30/lessons/42840수포자가 찍는 방식의 인덱스에 맞는 값과 answeri를 비교해서 count한다.
https://school.programmers.co.kr/learn/courses/30/lessons/12921배열 생성 후 값 초기화2부터 시작, 특정 숫자의 배수에 해당하는 숫자를 제거 (특정 숫자는 냅둬야한다.) (지워진 수는 건드리지 않는다.)2부터
https://school.programmers.co.kr/learn/courses/30/lessons/12977
https://school.programmers.co.kr/learn/courses/30/lessons/161989
https://school.programmers.co.kr/learn/courses/30/lessons/133499bab = bab.replace(pron, "\*")
https://school.programmers.co.kr/learn/courses/30/lessons/140108count가 같아지는 시점에 x, un_x count를 0으로 초기화하고 si를 count하는게 핵심
https://school.programmers.co.kr/learn/courses/30/lessons/140108count가 같아지는 시점에 x, un_x count를 0으로 초기화하고 si를 count하는게 핵심
https://school.programmers.co.kr/learn/courses/30/lessons/131128Counter를 사용하니 약 5배정도 빨라졌다.
https://school.programmers.co.kr/learn/courses/30/lessons/250125bfs였으면 색깔이 같은 경우 count += 1 하는 곳에 q.append((nx, ny)) 코드가 추가된다. 그러나 상하좌우만 탐색하므로 추가
https://school.programmers.co.kr/learn/courses/30/lessons/161990
https://school.programmers.co.kr/learn/courses/30/lessons/77484
https://school.programmers.co.kr/learn/courses/30/lessons/138476lambda를 이용한 정렬이 핵심 포인트
https://school.programmers.co.kr/learn/courses/30/lessons/64061moves의 인덱스가 1부터 시작하므로 i - 1을 해서 맞춰야한다.다른 사람 코드를 보니 굳이 pop을 하지 않고 bucket-1로 확인해도 됐다
https://school.programmers.co.kr/learn/courses/30/lessons/42578
https://school.programmers.co.kr/learn/courses/30/lessons/42889?language=python3현재 스테이지에 도달한 플레이어 수로 실패율을 구하고 전체 인원에서 현재 스테이지에 도달한 플레이어 수를 뺀다.sor
https://school.programmers.co.kr/learn/courses/30/lessons/12949 두 행렬의 크기가 다른 경우 주의
https://school.programmers.co.kr/learn/courses/30/lessons/12980예시)2진수 4 = 100 -> 처음에 1로 가는 점프 이후에 순간 이동으로 목표 달성 가능이것은 n을 이진수로 변경했을 때 1의 개수만큼 점프한다
https://school.programmers.co.kr/learn/courses/30/lessons/17680LRU 알고리즘 참고 : https://dailylifeofdeveloper.tistory.com/355deque를 선언할 때 maxlen
https://school.programmers.co.kr/learn/courses/30/lessons/17677중복된 요소가 없었다면 set()을 이용해 계산했을텐데 다중교집합, 다중합집합이라 애먹었다. 다중교집합 참고 링크, 정답 참고 링크파이썬 리스트 깊
https://school.programmers.co.kr/learn/courses/30/lessons/42626파이썬의 heapq는 최소 힙이다.
https://school.programmers.co.kr/learn/courses/30/lessons/17682숫자 10은 '1', '0' 이렇게 숫자가 따로 나오므로 아예 숫자 10을 t로 변경했다.S는 자기 자신과 같아서 로직을 구현하지 않았다.
https://school.programmers.co.kr/learn/courses/30/lessons/131127내 코드의 want.index(discountj) 부분을 dictionary로 구현해서 반복되는 코드를 효율적으로 작성했다.dictionary 하
https://school.programmers.co.kr/learn/courses/30/lessons/42583리스트로 풀다가 테스트케이스 5번에서 시간초과나서 다른분 답을 참고했다.다리 길이만큼 0으로 채워서 시간을 측정하는 방법이 인상깊었다.참고https
https://school.programmers.co.kr/learn/courses/30/lessons/64065원소의 개수 길이 순으로 정렬
https://school.programmers.co.kr/learn/courses/30/lessons/154539numbers의 길이가 100만이라 O(N^2)은 시간초과가 난다.인덱스를 스택에 저장하고 이전 인덱스로 이전 값을 가져오고 현재 값과 비교해서
https://school.programmers.co.kr/learn/courses/30/lessons/12913