분류 전체보기
-
[프로그래머스 3단계] 알고리즘 28. N개의 최소 공배수24년 11월 이전/레거시-알고리즘(3) 2018. 4. 16. 12:31
문제 출처는 프로그래머스 알고리즘 연습 에서 볼 수 있습니다!(https://programmers.co.kr/learn/challenges) 알고리즘 28. N개의 최소 공배수 두 수의 최소공배수(Least Common Multiple)란 입력된 두 수의 배수 중 공통이 되는 가장 작은 숫자를 의미합니다. 예를 들어 2와 7의 최소공배수는 14가 됩니다. 정의를 확장해서, n개의 수의 최소공배수는 n 개의 수들의 배수 중 공통이 되는 가장 작은 숫자가 됩니다. nlcm 함수를 통해 n개의 숫자가 입력되었을 때, 최소공배수를 반환해 주세요. 예를들어 [2,6,8,14] 가 입력된다면 168을 반환해 주면 됩니다. #include#includeusing namespace std; long long nlcm(..
-
[프로그래머스 2단계] 알고리즘 27. 가장 긴 팰린도롬24년 11월 이전/레거시-알고리즘(3) 2018. 4. 13. 12:09
문제 출처는 프로그래머스 알고리즘 연습 에서 볼 수 있습니다!(https://programmers.co.kr/learn/challenges) 알고리즘 27. 가장 긴 팰린도롬 앞뒤를 뒤집어도 똑같은 문자열을 palindrome이라고 합니다. longest_palindrom함수는 문자열 s를 매개변수로 입력받습니다. s의 부분문자열중 가장 긴 palindrom의 길이를 리턴하는 함수를 완성하세요. 예를 들어 s가 토마토맛토마토이면 7을 리턴하고 토마토맛있어이면 3을 리턴합니다. def longest_palindrom(s): # 함수를 완성하세요 return 0 # 아래는 테스트로 출력해 보기 위한 코드입니다.print(longest_palindrom("토마토맛토마토"))print(longest_palind..
-
[프로그래머스 2단계] 알고리즘 26. 2016년24년 11월 이전/레거시-알고리즘(3) 2018. 4. 12. 12:33
문제 출처는 프로그래머스 알고리즘 연습 에서 볼 수 있습니다!(https://programmers.co.kr/learn/challenges) 알고리즘 26. 2016년 2016년 1월 1일은 금요일입니다. 2016년 A월 B일은 무슨 요일일까요? 두 수 A,B를 입력받아 A월 B일이 무슨 요일인지 출력하는 getDayName 함수를 완성하세요. 요일의 이름은 일요일부터 토요일까지 각각SUN,MON,TUE,WED,THU,FRI,SAT를 출력해주면 됩니다. 예를 들어 A=5, B=24가 입력된다면 5월 24일은 화요일이므로 TUE를 반환하면 됩니다.#include#includeusing namespace std; string getDayName(int a,int b){ string answer= ""; re..
-
[프로그래머스 2단계] 알고리즘 25. 이상한 문자 만들기24년 11월 이전/레거시-알고리즘(3) 2018. 4. 11. 11:17
문제 출처는 프로그래머스 알고리즘 연습 에서 볼 수 있습니다!(https://programmers.co.kr/learn/challenges) 알고리즘 25. 이상한 문자 만들기toWeirdCase함수는 문자열 s를 매개변수로 입력받습니다. 문자열 s에 각 단어의 짝수번째 인덱스 문자는 대문자로, 홀수번째 인덱스 문자는 소문자로 바꾼 문자열을 리턴하도록 함수를 완성하세요. 예를 들어 s가 try hello world라면 첫 번째 단어는 TrY, 두 번째 단어는 HeLlO, 세 번째 단어는 WoRlD로 바꿔 TrY HeLlO WoRlD를 리턴하면 됩니다. 주의 문자열 전체의 짝/홀수 인덱스가 아니라, 단어(공백을 기준)별로 짝/홀수 인덱스를 판단합니다.def toWeirdCase(s): # 함수를 완성하세요..
-
[프로그래머스 2단계] 알고리즘 24. 행렬의 곱셈24년 11월 이전/레거시-알고리즘(3) 2018. 4. 10. 12:52
문제 출처는 프로그래머스 알고리즘 연습 에서 볼 수 있습니다!(https://programmers.co.kr/learn/challenges) 알고리즘 24. 행렬의 곱셈 행렬의 곱셈은, 곱하려는 두 행렬의 어떤 행과 열을 기준으로, 좌측의 행렬은 해당되는 행, 우측의 행렬은 해당되는 열을 순서대로 곱한 값을 더한 값이 들어갑니다. 행렬을 곱하기 위해선 좌측 행렬의 열의 개수와 우측 행렬의 행의 개수가 같아야 합니다. 곱할 수 있는 두 행렬 A,B가 주어질 때, 행렬을 곱한 값을 출력하는 productMatrix 함수를 완성해 보세요. class ProductMatrix { public int[][] productMatrix(int[][] A, int[][] B) { int[][] answer = null..
-
[프로그래머스 2단계] 알고리즘 23. 하샤드수 구하기24년 11월 이전/레거시-알고리즘(3) 2018. 4. 9. 11:09
문제 출처는 프로그래머스 알고리즘 연습 에서 볼 수 있습니다!(https://programmers.co.kr/learn/challenges) 알고리즘 23. 하샤드수 구하기양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다.Harshad함수는 양의 정수 n을 매개변수로 입력받습니다. 이 n이 하샤드수인지 아닌지 판단하는 함수를 완성하세요. 예를들어 n이 10, 12, 18이면 True를 리턴 11, 13이면 False를 리턴하면 됩니다.public class HarshadNumber{ public boolean isHarshad(int num){ return true; } // 아..
-
[프로그래머스 2단계] 알고리즘 22. 정수 내림차순으로 배치하기24년 11월 이전/레거시-알고리즘(3) 2018. 4. 6. 12:55
문제 출처는 프로그래머스 알고리즘 연습 에서 볼 수 있습니다!(https://programmers.co.kr/learn/challenges) 알고리즘 22. 정수 내림차순으로 배치하기reverseInt 메소드는 int형 n을 매개변수로 입력받습니다. n에 나타나는 숫자를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다. n은 양의 정수입니다. public class ReverseInt { public int reverseInt(int n){ return 0; } // 아래는 테스트로 출력해 보기 위한 코드입니다. public static void main(String[] args){ ReverseInt ri = new ReverseInt..
-
[프로그래머스 2단계] 알고리즘 21. 괄호 확인하기24년 11월 이전/레거시-알고리즘(3) 2018. 4. 6. 11:52
문제 출처는 프로그래머스 알고리즘 연습 에서 볼 수 있습니다!(https://programmers.co.kr/learn/challenges) 알고리즘 21. 괄호 확인하기is_pair함수는 문자열 s를 매개변수로 입력받습니다. s에 괄호가 알맞게 짝지어져 있으면 True를 아니면 False를 리턴하는 함수를 완성하세요. 예를들어 s가 (hello)()면 True이고, )(이면 False입니다. s가 빈 문자열("")인 경우는 없습니다. def is_pair(s): # 함수를 완성하세요 return True # 아래는 테스트로 출력해 보기 위한 코드입니다.print( is_pair("(hello)()"))print( is_pair(")(")) 풀이 : 이 문제의 핵심은 괄호 쌍의 확인! 이 문제는 Stac..