일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 리스트
- list
- 좋은 알고리즘
- python
- 프로그래머스
- import itertools
- 코딩테스트
- Import
- 알고리즘의 조건 5가지
- Tree
- 자바
- 유사코드
- 큐
- 알고리즘 표현
- 파이썬
- 들여쓰기로 표현한 트리
- java
- 코딩 테스트
- itertools
- Combination
- 태그
- LV.1
- 스택
- 유한소수 판별하기
- html
- 과일 장수
- 알고리즘의 조건
- 자료구조
- 알고리즘
- 트리
- Today
- Total
목록코딩테스트 (56)
인천의 자유인

나의 문제 풀이class Solution { public int solution(int a, int b) { for (int i = 2; i 첫번째 for문 a와 b모두가 나누어 질수 있을때 하나씩 나눠줍니다. 즉 기약분수로 만드는 것입니다. 첫번째 for문이 완성되면 이젠 두번째 for문으로 가게 되는데 두번째 for문에서는 i가 2로 나누어 지거나 5로 나누어지면 continue로 넘어가는데 만약 나누어지는 수가 2나 5가 아니면 무한소수이므로 return 2를 해줍니다. for문이 끝날때 까지 2나 5로 나누어지는 것만 있으면 return 1를 하여 수행을 종료합니다.

나의 문제풀이def solution(a, b): #1 lst = [] for x in range(1,a+1): if a%x == 0: lst.append(x) #2 for i in lst: if b%i == 0 and a%i == 0: a = a//i b = b//i #3 for x in range(2,b+1): if x%2 == 0 or x%5 == 0: continue if b%x == 0: return 2 return 1 #1번은 먼저 a의 약수를 구하기 위한 식입니다. a의 약수를 차례대로 ls..

나의 문제 풀이def solution(lines): a = [] for i in range(3): for j in range(lines[i][0], lines[i][1]): a.append(j) b =[] for x in a: if a.count(x) > 1: b.append(x) return len(set(b)) 저는 먼저 끝점을 제외한 정수를 a라는 리스트에 추가했습니다.그 다음에 개수가 2개 이상인 숫자는 새로운 리스트인 b에 추가했으며 b 안의 숫자 중복을 없애기 위해 세트로 변환하고 세트의 길이를 리턴을 했습니다.아무것도 없는 경우에는 당연히 0이 출력되고 겹치는 숫자의 개수를 return해서 답을 구했습..

나의 문제 풀이def solution(dots): num = [] for i in range(len(dots)): for j in range(0, len(dots)): if i >= j or (dots[i][1] - dots[j][1])==0 or (dots[i][0]-dots[j][0])==0: #중복되거나 빼서 0이 될값 제거 continue slope = (dots[i][1] - dots[j][1])/(dots[i][0]-dots[j][0]) #기울기 num.append(slope) for i in num: if num[0] == num[5] or num[1] == num[..

문제 내용 나의 문제풀이def solution(board):#1 lst = [] for i in range(len(board)): for j in range(len(board)): if board[i][j] == 1: lst.extend([[i,j]])#2 for i in lst: if i[0] == 0: for j in range(i[0]+1): if i[1] != 0 and i[1] != len(board[0])-1: board[j][i[1]-1:i[1]+2] = [1,1,1] ..

나의 문제 풀이def solution(spell, dic): for i in dic: answer = 0 for j in range(len(spell)): if spell[j] in i: answer +=1 if answer == len(spell): return 1 return 2

나의 풀이def solution(my_string): answer = '' num = 0 for x in my_string: if x in ['1','2','3','4','5','6','7','8','9','0']: answer = answer + x else: answer += " " lst = answer.split(' ') while '' in lst: lst.remove('') if len(lst) == 0: return 0 else: for x in lst: if not x == '': num += int(x) ..

나의 문제 풀이def solution(polynomial): answer = '' count1 = 0 count2 = 0 function = polynomial.split(' + ') for i in function: if 'x' in i: if len(i) == 1: count1 += 1 continue a = i.replace('x','') count1 += int(a) else: count2 += int(i) if count1 == 1: count1 = "" if count2==0: ..

나의 문제 풀이def solution(chicken): coupon1 = 0 coupon2 = 0 while chicken > 0: coupon2 += chicken % 10 chicken = chicken //10 coupon1 += chicken if coupon2 == 10: coupon1 = coupon1 +coupon2//10 elif coupon > 10: coupon1 = coupon1 +coupon2//10 + (coupon2//10 + coupon2%10)//10 return coupon1

나의 문제 풀이def solution(keyinput, board): answer = [] a = 0 b = 0 for x in keyinput: if x in ["left", "right"]: if x == "left": a -= 1 if a (board[0]-1)//2: a -= 1 elif x in ["up", "down"]: if x == "down": b -= 1 if b (board[1]-1)//2: b -= 1 answer.e..