일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 설계
- python
- List Comprehension
- sql
- count
- 코딩테스트 연습
- Len
- pcce 기출문제
- SQL 고득점 Kit
- Python3
- date_format
- 슬라이싱
- 파이썬 슬라이싱
- html
- 파이썬 몫
- 단어 공부
- 데이터
- 프로젝트
- where
- css
- 아이엠어바텐더
- Django
- 백준
- 프로그래머스
- Join
- GIT
- map
- ORDER BY
- YOLOv5
- 파이썬
- Today
- Total
목록Python/프로그래머스 (30)
nan + nan = 2nan
코드 입력 주어진 N에 따라서 * 문자의 숫자를 늘려가면서 출력하는 문제이다.n은 input으로 받고, 문자열로 넘어올지도 모른다는 의구심은 항상 가지고 int로 덮어 씌워준다. 주어진 n을 range 를 이용해서 루프문을 돌려준다.이 때, range는 (0, n)을 사용하면 0부터 n-1까지만 루프를 돌기 때문에,1부터 시작하면서 n까지 도는 루프문은 n+1로 나타낼 수 있다.참고로, range의 인자는 다음과 같다.# start부터 end 까지 step만큼 움직임range(start, end, step)# start : 입력하지 않을 경우, 처음부터# end : 인자값의 -1까지# step : 범위를 순회할 간격을 설정## ex) step을 2로 설정 시,for i in range(0, 6, 2): ..
코드 입력 문자열을 거꾸로 뒤집는 문제이다.슬라이싱을 이용해서 문제를 풀었다.문자열, 리스트, 튜플 등 시퀀스 자료형을 역순으로 만드는데 사용된다. 슬라이스의 기본 형식은 다음과 같다.# 슬라이스 기본 형식sequence[start:stop:step]# start : 슬라이스를 시작할 인덱스# stop : 슬라이스를 끝낼 인덱스# step : 슬라이스 간격# start와 stop의 경우, 생략하면 각각 처음과 끝을 의미# step의 경우, 생략하면 1## [::-1]# start와 stop이 생략됨# step이 -1이라는 의미는, 뒤에서부터 앞으로 가져오겠다는 의미##### ex) a = "hello"print(a[::-1])``` olleh ```` 보통은 step을 사용하지 않고 나의 경우에는 tex..
코드 입력 간단한 문제이다. 리스트의 순서를 거꾸로 뒤집을 때는 reverse() 함수를 사용하면 된다. 참고로, 비슷한 기본 내장 함수 중 reversed도 있다.list_a = [a, b, c]#### 1. reverse()list_a.reverse()print(list_a)``` [c, b, a] ```#### 2. reversed()# 루프문에서 사용. 직접적인 값을 건드리지 않음for item in reversed(list_a): print(item)print(list_a)```cba[a, b, c]```reverse 는 직접적으로 값을 변경하고,reversed 는 일시적으로만 값을 뒤에서부터 내주고, 원본 값은 변경되지 않는다. 출처 : 프로그래머스https://school.program..
코드 입력 간단한 문제이다. 2022년도의 한국식 나이로 출생 연도를 파악하는 문제이다.나이는 태어난 연도에 1살이기 때문에, 2022에서 해당 나이를 빼고 + 1을 해주면 태어난 연도가 된다.예를 들어, 3살인 경우 2020년도에 태어났다. 20년도 - 1살 / 21년도 - 2살 / 22년도 - 3살이기 때문에 태어난 연도는 2020년도가 된다.그렇기에, ( 현재 연도 - 나이 + 1 ) 공식이 성립한다. 출처 : 프로그래머스https://school.programmers.co.kr/learn/courses/30/lessons/120820 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.p..
코드 입력 아메리카노는 1잔에 5500원이기 때문에, 그 이하로 갖고 있으면 못 사먹으니if - else문을 이용해서 걸러준다.5500원 이상을 갖고 있다면, 5500원으로 예산을 나누었을 때 몫은 사먹을 수 있는 아메리카노의 잔 수이다.그리고 나머지는 아메리카노를 최대로 구매하고 남은 금액을 의미한다.남은 돈의 경우, 이번엔 *money - 5500(money//5500)으로 풀어서 표현했는데* (예산 - 아메리카노 구매 금액)간단히 표현한다면 money%5500으로 표현해도 같은 의미이다.-> 10000원이 있다면, 5500으로 나누었을 때 나머지는 4500. 몫은 1이니, 1잔을 구매하고 남은 금액은 4500원이 있다는 의미. 출처 : 프로그래머스https://school.programm..
코드 입력 조금 더 유려하게 코드를 짤 수도 있지 않았겠냐만은,if문 조건 4개 정도야... 하고 그냥 짰던 문제다.if - else 구문을 이용해서, 금액이 일정 금액 이상일 때 가격의 할인율을 반영한 결과를 제시하면 된다. 여담이지만 높은 금액부터 낮은 금액 순으로 해야, 해당 조건이 성립한다. # 잘못된 if문 설계 예시 if price >= 100000: answer = price*0.95 elif price >= 300000: answer = price*0.9 elif price >= 500000: answer = price*0.8 else: answer = price위의 조건처럼 만약 100,000원부터 높은 금액 순..
코드 입력 평균 값을 return 하는 문제이다.라이브러리를 써서 구할 수도 있겠지만,기본적인 sum과 len을 이용했다.numbers의 합을 numbers의 원소 개수로 나누면 산술평균인 평균 값이 구해진다.이 때, sum과 len의 Data type은 리스트여야 한다.평균 값 = sum( 리스트 ) / len (리스트) 출처 : 프로그래머스https://school.programmers.co.kr/learn/courses/30/lessons/120817 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr
코드 입력 피자 나눠 먹기(2) 보다는 쉬운 문제라고 생각한다.피자의 조각 수와 사람의 수가 변수로 주어지기 때문에사람의 수로 피자 조각 수를 나누었을 때 나머지가 0이라면 사람의 수로 피자를 나눈 몫을,나머지가 0이 아닌 경우, 피자 1판을 추가한 몫 + 1을 반환한다.1) 나머지가 0인 경우는 예를 들어 7명일 때 7조각이라면 1판이 필요하기 때문에 몫인 1을, 48명일 때 피자 조각이 6조각이라면 8판이 필요하기 때문에 48/6의 몫인 8을 반환하면 된다.2) 나머지가 0이 아닌 경우는 18명일 때 7조각이라면 최소 3판이 필요하기 때문에 몫인 2에 1을 더한 3을 반환한다. 피자 나눠 먹기(1)과 거의 동일한 문제이다. (2)가 비교적 조금 1,3보다 난이도가 있는 문제 같다. 이전에 작성..
코드 입력 이번엔 앞선 문제와 조건이 조금 다르다.피자는 무조건 6조각이며, 피자를 남기지 않고 모두 같은 수의 피자를 먹어야 한다.그렇다면 사람의 수는 6의 배수여야 하는 조건이 있기 때문에, while 문을 사용했다.피자의 판 수가 answer가 되고, 6을 곱해 6조각씩 사람의 수로 나누고 이 때의 나머지를 확인한다.즉 6의 배수만큼 움직이면서 사람의 수로 나누었을 때 남는 조각이 없는 피자의 판 수를 찾는다. 출처 : 프로그래머스https://school.programmers.co.kr/learn/courses/30/lessons/120815 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받..
코드 입력 한 사람 당 피자를 무조건 한 조각씩 먹어야 하는게 조건이다.미지수는 사람의 수이기 때문에, 1) 7로 나누었을 때 만약 나머지가 없다면 해당 몫을 그대로 전달하면 되고,(7명이라면 1판, 14명이라면 2판)2) 나머지가 있는 경우, 몫 + 1을 전달하면 된다.(8명이라면 2판이면 최소 1조각씩, 15명이라면 3판이면 최소 1조각씩) 출처 : 프로그래머스https://school.programmers.co.kr/learn/courses/30/lessons/120814 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr