본문 바로가기

분류 전체보기698

[c++] 프로그래머스 - 문자열 압축( Level 2, 2020 카카오 블라인드) 문제 코딩테스트 연습 - 문자열 압축 데이터 처리 전문가가 되고 싶은 "어피치"는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문 programmers.co.kr 코드 #include #include using namespace std; int solution(string s) { int answer = 9999; if(s.length()==1) answer=1; else{ for(int i=1; i1){ string plus=to_string(cnt); temp_ans+=plus.length()+before.length(); } else temp_ans+=before.length(); answer=min(a.. 2021. 10. 21.
[c++] 프로그래머스 - 문자열 다루기 기본( Level 1) 문제 코딩테스트 연습 - 문자열 다루기 기본 문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다. 제한 사항 s는 길이 1 programmers.co.kr 코드 #include #include using namespace std; bool solution(string s) { bool answer = true; for(int i=0; i=0&&s[i]-'0' 2021. 10. 21.
[c++] 프로그래머스 - 문자열 내림차순으로 배치하기( Level 1) 문제 코딩테스트 연습 - 문자열 내림차순으로 배치하기 문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요. s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 programmers.co.kr 코드 #include #include #include using namespace std; bool cmp(char a, char b){ if(a>'a'&&a'a'&&bb; //둘다 소문자 일 경우 else if(a>'a'&&a'A'&&b 2021. 10. 21.
[c++] 프로그래머스 - 문자열 내 마음대로 정렬하기( Level 1) 문제 코딩테스트 연습 - 문자열 내 마음대로 정렬하기 문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다. 예를 들어 strings가 ["sun", "bed", "car"]이고 n이 1이면 각 단어의 인덱 programmers.co.kr 코드 #include #include #include using namespace std; int index; bool cmp(string a,string b){ if(a[index]!=b[index]) return a[index] 2021. 10. 21.
[c++] 프로그래머스 - 문자열 내 p와 y의 개수( Level 1) 문제 코딩테스트 연습 - 문자열 내 p와 y의 개수 대문자와 소문자가 섞여있는 문자열 s가 주어집니다. s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return 하는 solution를 완성하세요. 'p', 'y' 모두 하나도 없는 경우는 항상 True를 programmers.co.kr 코드 #include #include using namespace std; bool solution(string s) { bool answer = true; int p_cnt=0,y_cnt=0; for(int i=0; i 2021. 10. 21.
[c++] 프로그래머스 - 모의고사( Level 1) 문제 코딩테스트 연습 - 모의고사 수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는 programmers.co.kr 코드 #include #include #include using namespace std; struct info{ vectorcheck_num; int peo_num; int correct_cnt; }; vectorpeo; vectorpeo1={1,2,3,4,5}; vectorpeo2={2,1,2,3,2,4,2,5}; vectorpeo3={3,3,1,1,2,2,4,4,5,5}; bool cmp(info a,info b){ return a.correct_cn.. 2021. 10. 21.
[c++] class 에서 멤버 변수를 초기화 하는 세가지 방법 멤버 변수를 초기화하는 방법 세 가지를 알아보자 클래스의 선언부와 구현부를 분리했다고 가정했을 때, 아래와 같이 클래스가 선언되어있다고 가정한다. class Point{ int x,y; public: Point(); Point(int a, int b); }; (1) 생성자 코드에서 멤버 변수 초기화 Point::Point(){ x=1,y=1; } Point::Point(int a,int b){ x=a,y=b; } (2) 생성자 서두에 초깃값으로 초기화 Point::Point():x(1),y(1){} Point::Point(int a, int b):x(a),y(b){} (3) 클래스 선언부 에서 직접 초기화 class Point{ int x=1,y=1; public: Point(); Point(int a,.. 2021. 10. 20.
[c++] 프로그래머스 - 로또의 최고 순위와 최저 순위( Level 1) 문제 코딩테스트 연습 - 로또의 최고 순위와 최저 순위 로또 6/45(이하 '로또'로 표기)는 1부터 45까지의 숫자 중 6개를 찍어서 맞히는 대표적인 복권입니다. 아래는 로또의 순위를 정하는 방식입니다. 1 순위 당첨 내용 1 6개 번호가 모두 일치 2 5개 번호 programmers.co.kr 코드 #include #include #include #include using namespace std; int check(int n){ if(nfirst==0){ best+=it->second; worst+=it->second; } else if(it->first!=0){ if(it->second==0) best++; else worst++; } } answer.push_back(check(best)); a.. 2021. 10. 20.
[c++] 프로그래머스 - 두 개 뽑아서 더하기( Level 1) 문제 코딩테스트 연습 - 두 개 뽑아서 더하기 정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요. 제한 programmers.co.kr 코드 #include #include #include using namespace std; vector solution(vector numbers) { vector answer; mapm; for(int i=0; i 2021. 10. 20.