본문 바로가기

반응형

코딩테스트

[알고리즘] 문자열 밀기 프로그래머스 LEVEL 0 프로그래머스 문자열 밀기 생각한 과정을 풀이로 써보려한다. 항상 직관적으로 코딩하는 나에게 여러 생각으로 나열하여 풀이하는것이 익숙치 않지만 이제부터 익숙해지기로 했다. 하루에 1개는 풀어보자 처음에 접근한 방법은 정말 단순하다.. 불필요한 조건들과 반복된 것들로 인해 장황해보인다. def solution(A,B): answer = -1 if A == B: return 0 lista = list(A) listb = list(B) for i in range(1,len(A)): a = list(lista.pop()) a.extend(lista) lista = a if lista == listb: return i # answer = i # break return answer요렇게 해보니깐 이전에 보이지 않았던.. 더보기
[알고리즘] 홀짝에 따라 다른값 변환 (프로그래머스) 문제 설명 양의 정수 n이 매개변수로 주어질 때, n이 홀수라면 n 이하의 홀수인 모든 양의 정수의 합을 return 하고 n이 짝수라면 n 이하의 짝수인 모든 양의 정수의 제곱의 합을 return 하는 solution 함수를 작성해 주세요. 초기에 내가 짜놓은 코드 (장황하다...) def solution1(n): if n % 2 == 1: # 나머지가 1이라는 결과를 보여주기 위한 코드 answer = sum(list(map(lambda x : 2*x +1 , range(0,(n//2)+1,1)))) else: answer = sum(list(map(lambda x : x**2, range(0,n+1,1)))) return answer 초기에 내가 짜놓은 코드 (장황한것 마찬가지나 나의 사고의 흐름에.. 더보기
[알고리즘] 파이썬 활용해서 구구단 구하기 (반복문 한번) 반복문을 한번만 사용해서 구구단 실행하는 방법 # while 문을 활용하여 구구단연습하기 i = 2 j = 1 while i < 10: # 2단부터 9단까지 실행 result = i * j print('{i} * {j} = {result}'.format( i = i, j = j, result = result)) j = j + 1 if j == 10: i += 1 j = 1 for 반복문보다 while 조건문 쓰느것이 더 효과적임. 나머지는 추가적으로 설명.. *. for문 2번 반복 사용 예시 for a in range(2,9) : for b in range (2, 9) : val = a * b print (f'{a} * {b} = {val}') 더보기

반응형