본문 바로가기
728x90
반응형

코딩테스트33

c++(cpp) 프로그래머스 : 코딩 테스트 - 자릿수 더하기 #include #include using namespace std; int solution(int n) { int answer = 0; string s = to_string(n); for(int i = 0 ; i < s.size(); i++) { s[i] = s[i] - 48; //48대신 '0'으로 써도 된다. //s[i] = s[i]-'0'; 이렇게.. answer += s[i]; } return answer; } 2022. 7. 26.
c++(cpp) 프로그래머스 : 코딩테스트 - 신규 아이디 추천 #include #include #include #include using namespace std; string solution(string new_id) { string answer = ""; // 소문자 치환 for(char& ch : new_id) { ch = tolower(ch); } // 소문자, 숫자, -, _, . 제외한 모든 문자 제거 for(char ch : new_id) { if(isalpha(ch) || isdigit(ch) || strchr("-_.", ch)) answer += ch; } // .가 두개 이상 -> 하나로 int idx = -1; while((idx = answer.find("..")) != -1) //answer안에 ..이 있을 때 까지 돌기 { answer.r.. 2022. 7. 26.
c++(cpp) 프로그래머스 : 코딩테스트 - 로또의 최고 순위와 최저 순위 약간 노가다로 푼 것 같지만.. #include #include using namespace std; vector solution(vector lottos, vector win_nums) { vector answer; int count = 0; int zero = 0; for(int i = 0 ; i < lottos.size(); i++) { if(lottos[i] == 0) { zero += 1; } for(int j = 0 ; j < lottos.size(); j++) { if(lottos[i] == win_nums[j]) { count += 1; } } } if(count + zero == 6) { answer.push_back(1); } else if(count + zero == 5) { answ.. 2022. 7. 26.
c++(cpp) 프로그래머스 : 코딩 테스트 - 이상한 문자 만들기 문제 설명 문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요. 제한 사항 문자열 전체의 짝/홀수 인덱스가 아니라, 단어(공백을 기준)별로 짝/홀수 인덱스를 판단해야합니다. 첫 번째 글자는 0번째 인덱스로 보아 짝수번째 알파벳으로 처리해야 합니다. 입출력 예 sreturn "try hello world""TrY HeLlO WoRlD" 입출력 예 설명 "try hello world"는 세 단어 "try", "hello", "world"로 구성되어 있습니다. 각 단어의 짝수번째 문자를 대문자로, 홀수번째 문자를 소문자로 바꾸면 ".. 2022. 7. 26.
c++(cpp) 프로그래머스 : 코딩테스트 - 같은 숫자는 싫어 (효율성 실패) 문제 설명 배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은 수들을 반환할 때는 배열 arr의 원소들의 순서를 유지해야 합니다. 예를 들면, arr = [1, 1, 3, 3, 0, 1, 1] 이면 [1, 3, 0, 1] 을 return 합니다. arr = [4, 4, 4, 3, 3] 이면 [4, 3] 을 return 합니다. 배열 arr에서 연속적으로 나타나는 숫자는 제거하고 남은 수들을 return 하는 solution 함수를 완성해 주세요. 제한사항 배열 arr의 크기 : 1,000,000 이하의 자연수 배열 arr의 원소의 크기 : 0보다 크거나 .. 2022. 7. 22.
c++(cpp) 프로그래머스 : 코딩테스트 - 폰켓몬 문제 설명 당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했습니다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다. 홍 박사님 연구실의 폰켓몬은 종류에 따라 번호를 붙여 구분합니다. 따라서 같은 종류의 폰켓몬은 같은 번호를 가지고 있습니다. 예를 들어 연구실에 총 4마리의 폰켓몬이 있고, 각 폰켓몬의 종류 번호가 [3번, 1번, 2번, 3번]이라면 이는 3번 폰켓몬 두 마리, 1번 폰켓몬 한 마리, 2번 폰켓몬 한 마리가 있음을 나타냅니다. 이때, 4마리의 폰켓몬 중 2마리를 고르는 방법은 다음과 같이 6가지가 있습니다. 첫 번째(3번), 두 번째(1번) 폰켓몬을 선택 첫 번째(3번), 세 번째(2번) 폰켓몬을 선택 첫.. 2022. 7. 22.
728x90
반응형