레거시
-
[프로그래머스 1단계] 알고리즘 7. 문자열 내 마음대로 정렬하기레거시/레거시-알고리즘(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. 같은 숫자는 싫어!레거시/레거시-알고리즘(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. 행렬 합레거시/레거시-알고리즘(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. 가장 작은 수 제거하기레거시/레거시-알고리즘(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. 피보나츠 수열레거시/레거시-알고리즘(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
-
[프로그래머스 1단계] 알고리즘 2. 최대값과 최소값레거시/레거시-알고리즘(3) 2018. 2. 12. 23:41
문제 출처는 프로그래머스 알고리즘 연습 에서 볼 수 있습니다!(https://programmers.co.kr/learn/challenges) 알고리즘 2. 최대값과 최소값 구하기. 입력값은 "숫자(공백)숫자(공백)... 숫자" 이런 형식의 문자열이다. 이 문자열에서 최대값과 최소값을 찾아 "최소값(공백)최대값" 형식의 문자열을 반환하는 함수를 만드시오. public class GetMinMaxString { public String getMinMaxString(String str) { return ""; } public static void main(String[] args) { String str = "1 2 3 4"; GetMinMaxString minMax = new GetMinMaxString()..
-
[프로그래머스 1단계] 알고리즘 1. 최대공약수 최소공배수 구하기레거시/레거시-알고리즘(3) 2018. 2. 5. 12:14
문제 출처는 프로그래머스 알고리즘 연습 에서 볼 수 있습니다!(https://programmers.co.kr/learn/challenges) 알고리즘 1. 두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환해주는 gcdlcm 함수를 완성해 보세요 풀이 : 최대공약수(gcd) = 유클리드 알고리즘으로 풀어라최소공배수(lcm) = gcd * (a / gcd) * (b / gcd) = (a * b) / gcd 최대공약수를 구하는 코드는 반복문으로 다음과 같이 작성할 수 있다. int gcd(int a, int b){ int gcd_value = (a = 1){ //이 값이 1이 될때까지//만약 a와 b랑 둘 다 나누어 떨어지면//최대공약수 반환if ((a % gcd_value == 0) && (b % g..