본문 바로가기

Programming/Algorithm (C++)

(66)
c04l c04_0309
c06 ex00 /* ************************************************************************** */ /* */ /* ::: :::::::: */ /* ft_print_program_name.c :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: minjeoki +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2021/03/04 15:29:22 by minjeoki #+# #+# */ /* Updated: 2021/03/04 15:29:22 by minjeoki ### ########.fr */ /* */ /* ***********************************************..
[프로그래머스 1단계] c++: : 문자열을 정수로 바꾸기 programmers.co.kr/learn/courses/30/lessons/12925 코딩테스트 연습 - 문자열을 정수로 바꾸기 문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요. 제한 조건 s의 길이는 1 이상 5이하입니다. s의 맨앞에는 부호(+, -)가 올 수 있습니다. s는 부호와 숫자로만 이루어져있습니 programmers.co.kr #include #include using namespace std; int solution(string s) { int answer = 0; int a[7]; int i=0; for(int j=0; j
[프로그래머스 1단계] c++ :: 소수 찾기 (에라토스테네스의 체) #include #include using namespace std; int a[1000001]={0, }; int solution(int n) { int answer = 0; for(int i=2; i
[프로그래머스 1단계] c++:: string 클래스의 substr() programmers.co.kr/learn/courses/30/lessons/12903 코딩테스트 연습 - 가운데 글자 가져오기 단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다. 재한사항 s는 길이가 1 이상, 100이하인 스트링입니다. 입출력 예 s ret programmers.co.kr #include #include using namespace std; string solution(string s) { string answer = ""; int i=0; int m; while(s[i]) i++; m=i/2-1; if (i%2==1) answer=s[i/2]; else { for(int j=0; j
[프로그래머스 레벨1] c++ :: 두개 뽑아서 더하기 programmers.co.kr/learn/courses/30/lessons/68644 코딩테스트 연습 - 두 개 뽑아서 더하기 정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요. 제한 programmers.co.kr #include #include #include using namespace std; vector solution(vector numbers) { vector answer; for(int i=0; i
[백준 2579] c++ :: 계단 오르기 문제 계단 오르기 게임은 계단 아래 시작점부터 계단 꼭대기에 위치한 도착점까지 가는 게임이다. 과 같이 각각의 계단에는 일정한 점수가 쓰여 있는데 계단을 밟으면 그 계단에 쓰여 있는 점수를 얻게 된다. 예를 들어 와 같이 시작점에서부터 첫 번째, 두 번째, 네 번째, 여섯 번째 계단을 밟아 도착점에 도달하면 총 점수는 10 + 20 + 25 + 20 = 75점이 된다. 계단 오르는 데는 다음과 같은 규칙이 있다. 계단은 한 번에 한 계단씩 또는 두 계단씩 오를 수 있다. 즉, 한 계단을 밟으면서 이어서 다음 계단이나, 다음 다음 계단으로 오를 수 있다. 연속된 세 개의 계단을 모두 밟아서는 안 된다. 단, 시작점은 계단에 포함되지 않는다. 마지막 도착 계단은 반드시 밟아야 한다. 따라서 첫 번째 계단을 ..
[백준 9184] c++ :: 신나는 함수 실행 문제 재귀 호출만 생각하면 신이 난다! 아닌가요? 다음과 같은 재귀함수 w(a, b, c)가 있다. if a 20, then w(a, b, c) returns: w(20, 20, 20) if a < b and b < c, then w(a, b, c) returns: w(a, b, c-1) + w(a, b-1, c-1) - w(a, b-1, c) otherwise it returns: w(a-1, b, c) + w(a-1, b-1, c) + w(a-1, b, c-1) - w(a-1, b-1, c-1) 위의 함수를 구현하는 것은 매우 쉽다. 하지만, 그대로 구현하면 값을 구하는데 매우 오랜 시간이 걸린다. (예를 들면, a=15, b=15, c=15) a, b, c가 주어졌을 때, w(a, b, c)를 출력..