전체 글
-
[프로그래머스 1단계] 알고리즘 10. 정수 제곱근 판별하기24년 11월 이전/레거시-알고리즘(3) 2018. 3. 19. 11:44
문제 출처는 프로그래머스 알고리즘 연습 에서 볼 수 있습니다!(https://programmers.co.kr/learn/challenges) 알고리즘 10. 정수 제곱근 판별하기: nextSqaure함수는 정수 n을 매개변수로 입력받습니다.n이 임의의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 임의의 정수 x의 제곱이 아니라면 'no'을 리턴하는 함수를 완성하세요.예를들어 n이 121이라면 이는 정수 11의 제곱이므로 (11+1)의 제곱인 144를 리턴하고, 3이라면 'no'을 리턴하면 됩니다. def nextSqure(n): # 함수를 완성하세요 return '' # 아래는 테스트로 출력해 보기 위한 코드입니다.print("결과 : {}".format(nextSqure(121))); 풀이: ..
-
[프로그래머스 1단계] 알고리즘 9. 자릿수 더하기24년 11월 이전/레거시-알고리즘(3) 2018. 3. 15. 23:28
문제 출처는 프로그래머스 알고리즘 연습 에서 볼 수 있습니다!(https://programmers.co.kr/learn/challenges) 알고리즘 9. 자릿수 더하기:sum_digit함수는 자연수를 전달 받아서 숫자의 각 자릿수의 합을 구해서 return합니다.예를들어 number = 123이면 1 + 2 + 3 = 6을 return하면 됩니다. sum_digit함수를 완성해보세요. def sum_digit(number): '''number의 각 자릿수를 더해서 return하세요''' return sum([int(i) for i in str(number)]) # 아래는 테스트로 출력해 보기 위한 코드입니다.print("결과 : {}".format(sum_digit(123))); 풀이:내가 푼 풀이는 ..
-
[프로그래머스 1단계] 알고리즘 8. 문자열 다루기 기본24년 11월 이전/레거시-알고리즘(3) 2018. 3. 12. 23:09
문제 출처는 프로그래머스 알고리즘 연습 에서 볼 수 있습니다!(https://programmers.co.kr/learn/challenges) 알고리즘 8. 문자열 다루기 기본 alpha_string46함수는 문자열 s를 매개변수로 입력받습니다.s의 길이가 4혹은 6이고, 숫자로만 구성되있는지 확인해주는 함수를 완성하세요.예를들어 s가 a234이면 False를 리턴하고 1234라면 True를 리턴하면 됩니다. def alpha_string46(s): #함수를 완성하세요 return True# 아래는 테스트로 출력해 보기 위한 코드입니다.print( alpha_string46("a234") )print( alpha_string46("1234") ) 풀이:이 문제의 핵심은 두가지다. 문자열의 길이가 4 또는 ..
-
[프로그래머스 1단계] 알고리즘 7. 문자열 내 마음대로 정렬하기24년 11월 이전/레거시-알고리즘(3) 2018. 3. 5. 11:54
문제 출처는 프로그래머스 알고리즘 연습 에서 볼 수 있습니다!(https://programmers.co.kr/learn/challenges) 알고리즘 7. 문자열 내 마음대로 정렬하기 strange_sort함수는 strings와 n이라는 매개변수를 받아들입니다. strings는 문자열로 구성된 리스트인데, 각 문자열을 인덱스 n인 글자를 기준으로 정렬하면 됩니다.예를들어 strings가 [sun, bed, car]이고 n이 1이면 각 단어의 인덱스 1인 문자 u, e ,a를 기준으로 정렬해야 하므로 결과는[car, bed, sun]이 됩니다. strange_sort함수를 완성해 보세요. def strange_sort(strings, n): '''strings의 문자열들을 n번째 글자를 기준으로 정렬해서 ..
-
[프로그래머스 1단계] 알고리즘 6. 같은 숫자는 싫어!24년 11월 이전/레거시-알고리즘(3) 2018. 2. 21. 23:35
문제 출처는 프로그래머스 알고리즘 연습 에서 볼 수 있습니다!(https://programmers.co.kr/learn/challenges) 알고리즘 6. 같은 숫자는 싫어!입력된 문자열(숫자인)을 순서를 유지하면서 글자들 중 연속적으로 나타나는 아이템은 제거된 배열을 리턴하도록 함수를 완성하라 ex) s = '133303' -> ['1', '3', '0', '3'] s = '47330' -> ['4', '7', '3', '0'] s = '' -> [] def no_continuous(s): # 함수를 완성하세요 return [] # 아래는 테스트로 출력해 보기 위한 코드입니다.print( no_continuous( "133303" )) 풀이:처음에는 문자열을 숫자로 바꾼 후, 1의 자리수부터 차근 차근..
-
[프로그래머스 1단계] 알고리즘 5. 행렬 합24년 11월 이전/레거시-알고리즘(3) 2018. 2. 20. 23:48
문제 출처는 프로그래머스 알고리즘 연습 에서 볼 수 있습니다!(https://programmers.co.kr/learn/challenges) 알고리즘 5. 두 m x n 행렬의 합을 구하시오 (+ m x n , n x k 행렬의 곱 구하기) #include#includeusing namespace std; vector sumMatrix(vectorA, vectorB){ vector answer = A; return answer;}int main(){ vector a{{1,2},{2,3}}, b{{3,4},{5,6}}; vector answer = sumMatrix(a,b); for(int i=0;i
-
[프로그래머스 1단계] 알고리즘 4. 가장 작은 수 제거하기24년 11월 이전/레거시-알고리즘(3) 2018. 2. 13. 00:17
문제 출처는 프로그래머스 알고리즘 연습 에서 볼 수 있습니다!(https://programmers.co.kr/learn/challenges) 알고리즘 4. 가장 작은 수 제거하기. 주어진 리스트에서 가장 작은수를 제거하시오 def rm_small(mylist): # 함수를 완성하세요 return '' # 아래는 테스트로 출력해 보기 위한 코드입니다.my_list = [4, 3, 2, 1]print("결과 {} ".format(rm_small(my_list))) 풀이 : 이번에는 파이썬을 이용하여 이 문제를 풀어보자. 사실 이 문제의 답은 쉽다. 순서는 다음과 같다. 1. 가장 작은 수를 찾는다.2. 가장 작은 수와 같은 수는 모두 제거한다. 그렇다면 코드는 이렇게 작성할 수 있을 것이다. def rm_s..
-
[프로그래머스 1단계] 알고리즘 3. 피보나츠 수열24년 11월 이전/레거시-알고리즘(3) 2018. 2. 12. 23:59
문제 출처는 프로그래머스 알고리즘 연습 에서 볼 수 있습니다!(https://programmers.co.kr/learn/challenges) 알고리즘 3. 피보나츠 수열을 작성하시오 #includeusing namespace std; long long fibonacci(int n){return 0;} int main(){int testCase = 10;long long testAnswer = fibonacci(testCase); cout