파이썬(30)
-
[Programmers/Lv. 0] 코딩테스트 입문 Day 21 - 문자열, 사칙연산, 시뮬레이션, 2차원배열, 수학, 배열 (Python)
1. 숨어있는 숫자의 덧셈 (2) (문제 설명, 제한사항, 입출력 예) 소문자, 대문자, 자연수로만 구성되어 있는 문자열 my_string이 주어질 때, my_string 안에 있는 자연수들의 합을 구하라는 문제이다. 단, 연속된 수는 하나의 숫자로 간주한다. my_string 문자열에 자연수가 없는 경우에는 0을 반환한다. (내가 생각한 풀이 과정) 어려운 코드는 아니지만, 설명이 조금 어려워 사용한 코드도 함께 설명을 하겠다. 우선, 문자열(my_string)을 하나씩 반복하면서 요소(i)가 숫자인지 아닌지를 판별(isdigit() 함수 사용)해준다. 이때, 가장 고려해야 할 점이 "연속된 수는 하나의 숫자로 간주한다"는 점이었다. 즉, 단순히 숫자라고 더하기를 더해주면 안 되고, 이후의 수, 그 이..
2023.06.04 -
[Programmers/Lv. 0] 코딩테스트 입문 Day 20 - 수학, 시뮬레이션, 문자열, 사칙연산 (Python)
1. 직사각형 넓이 구하기 (문제 설명, 제한사항, 입출력 예) 직사각형 네 꼭짓점의 좌표가 [[x1, y1], [x2, y2], [x3, y3], [x4, y4]] 형태로 담겨 있는 배열이 주어질 때, 주어진 직사각형의 넓이를 구하라는 문제이다. 주어진 직사각형은 2차원 좌표 평면에 변이 축과 평행하게 주어진다. (내가 생각한 풀이 과정) 직사각형의 넓이를 구하는 방법이 "가로 x 세로"인 것은 초등학교 때 배우니까 너무 당연한 것이고, 나는 이 가로와 세로의 길이를 x값의 최대-최소, y값의 최대-최소 식을 이용해서 구하기로 했다. (코드) 더보기 💡 내 코드 def solution(dots): return (max(dots)[0] - min(dots)[0])*(max(dots)[1] - min(do..
2023.06.03 -
[Programmers/Lv. 0] 코딩테스트 입문 Day 19 - 문자열, 배열, 조건문 (Python)
1. 7의 개수 (문제 설명, 제한사항, 입출력 예) 정수 배열이 주어질 때, 배열 안에 7이 총 몇 개 있는지 구하라는 문제이다. (내가 생각한 풀이 과정) 파이썬 문자열에는 count()라는 찾고 싶은 문자의 개수를 구할 수 있는 내장 함수가 존재한다. 배열 속에 들어있는 요소들을 하나의 문자열로 변환한 후, count 함수를 이용해서 7의 개수를 구하면 된다. (코드) 더보기 💡 내 코드 def solution(array): return str(array).count('7') 2. 잘라서 배열로 저장하기 (문제 설명, 제한사항, 입출력 예) 주어진 문자열을 주어진 정수만큼 잘라서 저장한 배열을 반환하라는 문제이다. (내가 생각한 풀이 과정) 문자열(my_str) 속에 있는 한 문자(i)씩 반복을 하..
2023.06.03 -
[Programmers/Lv. 0] 코딩테스트 입문 Day 18 - 문자열, 수학, 조건문, 정렬 (Python)
1. 문자열안에 문자열 (문제 설명, 제한사항, 입출력 예) 문자열 str1과 str2가 주어질 때, str1 안에 str2가 들어 있다면 1을, str2가 없다면 2를 반환하라는 문제이다. (내가 생각한 풀이 과정) 앞에서도 많이 풀어봤지만, 문자열은 파이썬의 in 연산을 사용할 수 있다는 것을 이용했다. (코드) 더보기 💡 내 코드 def solution(str1, str2): return 1 if str2 in str1 else 2 2. 제곱수 판별하기 (문제 설명, 제한사항, 입출력 예) 주어진 정수가 제곱수라면 1을, 제곱수가 아니라면 2를 반환하라는 문제이다. (내가 생각한 풀이 과정) 제곱근을 구하는 sqrt() 함수를 사용했다. 주어진 수의 제곱근이 정수라면, 주어진 수가 제곱수라고 판단할..
2023.06.02 -
[Programmers/Lv. 0] 코딩테스트 입문 Day 17 - 문자열, 수학, 조건문, 배열, 사칙연산 (Python)
1. 숫자 찾기 (문제 설명, 제한사항, 입출력 예) 정수 num과 k가 주어질 때, 정수 num 중에서 k가 있다면 정수 num에서의 k가 있는 자릿수를 반환하라는 문제이다. 만약에, 정수 k가 num 안에 없다면 -1을 반환하도록 한다. num에 k가 여러 개 있다면, 가장 처음 나타나는 자리를 반환하면 된다. (내가 생각한 풀이 과정) 인덱스가 아니라 자릿수를 반환하라는 문제이므로, 결국은 인덱스를 찾아, 마지막에는 +1을 해줘야 한다는 것이 먼저 떠올랐다. find() 함수를 사용해서 인덱스를 찾아주었다. 단, find() 함수를 사용하기 위해 주어진 정수들은 문자열로 변환해서 사용했다. (코드) 더보기 💡 내 코드 def solution(num, k): answer = str(num).find(..
2023.05.31