알고리즘
-
[level1] - 문자열 다루기 기본programmers/level1 2020. 2. 26. 22:57
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr [풀이] 문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인! len()을 이용해서 문자열 길이가 4 혹은 6인지를 판별하고, 숫자로만 구성되어 있는지는 try ~ except 구문 안에 문자열 s가 int()로 형 변환했을 때, 값이 숫자면 True를 반환하고, 값이 숫자가 아니면 Fasle를 반환하도록 하였다. [code] def solution(s): answer = True if len(s) == 4 or len(s) == 6: try: if int(s): return answer exce..
-
[level1] - 두 정수 사이의 합programmers/level1 2020. 2. 26. 21:50
코딩테스트 연습 - 두 정수 사이의 합 두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요. 예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다. 제한 조건 a와 b가 같은 경우 programmers.co.kr 코딩테스트 연습 - 두 정수 사이의 합 두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요. 예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다. 제한 조건 a와 b가 같은 경우 programmers.co.kr 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의..
-
[level1] - 문자열 내 p와 y의 개수programmers/level1 2020. 2. 25. 23:42
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr [풀이] 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return 하는 solution를 완성하세요. 단, 개수를 비교할 때 대문자와 소문자는 구별하지 않습니다. 예를 들어, "pPoooyY"이라는문자열을 입력 받았을 때, 여기서 p의 대소문자의 개수를 구해서 P라는 변수에 담고, y의 대소문자의 개수를 구해서 Y라는 변수에 담았다. P와 Y의 개수가 같으면 true를 return 하고, P와 Y의 개수가 틀리면 false를 return 하는 로직을 생각해보았다. [code] ..
-
[1193] 백준 알고리즘 - 분수찾기Baekjoon Online Judge 2020. 2. 19. 14:20
1193번: 분수찾기 www.acmicpc.net [풀이] 대각선으로 나열되는 분수를 풀어 쓰면, 1/1 -> (1/2 -> 2/1) -> (3/1 -> 2/2 -> 1/3) -> (1/4 -> 2/3 -> 3/2 -> 4/1) -> ... 이런식으로 나열된다. 따라서, 입력 받은 su를 step(진행 순서)로 빼가면서, 해당하는 단계에 해당하는 수를 구하고, 짝수 번째 단계인지 혹은, 홀수 번째 단계인지에 따라서 분자 분모의 숫자 방향을 바꾼다 홀수 번째는 분자는 내림차순, 분모는 오름차순 짝수 번째는 분자는 오름차순, 분모가 내림차순 [code] su=int(input()) step=1 while su>step: su-=step step+=1 if step%2 == 0: a=su b=step-su+1..
-
[1712] 백준 알고리즘 - 손익분기점Baekjoon Online Judge 2020. 2. 18. 10:55
[python 풀이] 1712번: 손익분기점 www.acmicpc.net 노트북 판매 대수에 상관없이 매년 고정 비용(임대료, 재산세, 보험료, 급여 등) -> A 노트북 1대 생산비(재료비와 인건비) 가변 비용 -> B 노트북 1대의 가격 -> C 여기서, B와 C는 노트북 1대 당 이익에 연관 되어있다. 만약 노트북을 N개 생산해서 얻은 이익 E에 대한 식으로 나타내면 간단해진다. 이익 E = (노트북 1대 당 가격 C - 노트북 1대 생산비 B) * N(개) - A(고정비용) 알맞게 고치면, E = (C-B)*N-A 여기서, E = 0이 되면 손익분기점이 되는 것이고, E < 0 작으면 그때부터 자신이 가진 예산보다 이익이 발생해 손익분기점을 넘게 된다. (노트북 1대 당 가격 C - 노트북 1대 ..