본문 바로가기

Coding Test32

[C++ 기초] 조건문, 반복문 1. 조건문 1-1. 조건문 (=분기문) 이란 ? 프로그램의 흐름을 조건에 따라서 분기시키는 문장 조건을 제시하고, true이면 실행 / false이면 무시한다. 1-2. 조건문의 종류 ① if 문 ② switch 문 1-2-1. if 문 if (조건문1) { 실행문 } else if (조건문2) { 실행문 } else { 실행문 } ex ) if (x 0) { x = x - 1; } else { x = x + 1; // x = 0 인 경우 } 1-2-2. switch 문 switch문은 특별한 형태의 if문이다. 타겟 변수에 대하여 그 정수값에 따라 다른 실행문을 수행한다.기본적으로 모든 case를 돌기 때문에, 해당 case 이후 switch문을 .. 2022. 7. 13.
[C++ 기초] 연산자 1. 산술 연산자 1-1. 산술 연산자의 종류 연산 표현식 이항 덧셈 a + b 이항 뺄셈 a - b 곱셈 a * b 나눗셈 a / b 나머지 a % b (a, b 모두 정수) 전위 증가 ++a 전위 감소 --a 후위 증가 a++ 후위 감소 a-- 1-2. 산술 연산자의 우선순위 후위 증감 >> 전위 증감 >> 곱셈, 나눗셈, 나머지 >> 이항 덧뺄셈 2. 불리언 연산자 2-1. 불리언 연산자의 종류 타입 연산 표현식 관계 연산자 아니다 ! a 크다 크거나 같다 a > b a >= b 작다 작거나 같다 a < b a 2022. 7. 13.
[C++ 기초] 변수, 상수, 리터럴 1. 변수 1-1. 기본 타입 변수 (Intrinsic Type) 타입 타입명 문자 char 정수 short int long long long 실수 float double long double 논리 bool true , false 부호 signed 기본적으로 정수는 signed unsigned 2. 상수 2-1. 상수란 ? 상수는 값의 변경이 불가능한 변수이다. ex ) const int c1 = 3; const bool c2 = true; const char c3 = 'a'; 2-2. 상수의 특성 ① 선언과 동시에 값을 설정해야 한다. ② ' 변경이 불가능 ' = ' 메모리 위치 값을 변경할 수 없음 ' 3. 리터럴 3-1. 리터럴이란 ? 리터럴은 변수가 아닌, 변하지 않는 데이터 그 자체를 의미한다... 2022. 7. 13.
[프로그래머스 Lv.2] 더 맵게 / c++ [출처] https://school.programmers.co.kr/learn/courses/30/lessons/42626 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr ▷▷ 문제 매운 것을 좋아하는 Leo는 모든 음식의 스코빌 지수를 K 이상으로 만들고 싶습니다. 모든 음식의 스코빌 지수를 K 이상으로 만들기 위해 Leo는 스코빌 지수가 가장 낮은 두 개의 음식을 아래와 같이 특별한 방법으로 섞어 새로운 음식을 만듭니다. 섞은 음식의 스코빌 지수 = 가장 맵지 않은 음식의 스코빌 지수 + (두 번째로 맵지 않은 음식의 스코빌 지수 * 2) Leo는 모든.. 2022. 7. 9.
[프로그래머스 Lv.1] 신고 결과 받기 / c++ [출처] https://school.programmers.co.kr/learn/courses/30/lessons/92334 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr ▷▷ 문제 신입사원 무지는 게시판 불량 이용자를 신고하고 처리 결과를 메일로 발송하는 시스템을 개발하려 합니다. 무지가 개발하려는 시스템은 다음과 같습니다. 각 유저는 한 번에 한 명의 유저를 신고할 수 있습니다. 신고 횟수에 제한은 없습니다. 서로 다른 유저를 계속해서 신고할 수 있습니다. 한 유저를 여러 번 신고할 수도 있지만, 동일한 유저에 대한 신고 횟수는 1회로 처리됩니다. k번.. 2022. 7. 9.
[C++ 줍줍] string의 특정 값 제거하기 : index, 문자 기준 ▷ 문제 상황 1 string의 특정 인덱스 값을 제거하고 싶다! ▶ 해결 방법 erase( ) 메소드를 이용 ex ) #include #include using namespace std; int main() { string s = "HAPPY" // 첫 문자 삭제 s.erase(s.begin()); // 마지막 문자 삭제 s.erase(s.end()); // 'index = n'인 문자 삭제 s.erase(s.begin() + n); // 'index = a'부터 'index = b'까지 삭제 s.erase(s.begin() + a, s.begin() + b); // 'index = n'부터 k개 문자 삭제 s.erase(n, k); // 'index = n'부터 끝까지 전부 삭제 s.erase(n);.. 2022. 7. 5.
[C++ 줍줍] Map의 value에 여러 개의 값을 저장하기 ▷ 문제 상황 key와 value로 이루어진 Map에서 value에 여러개의 값을 저장하고 싶다! ▶ 해결 방법 value에 vector를 넣어줄 수 있다! 정의하는 형식 ) map map_of_vector; OR map map_of_vector; [참고자료] https://www.geeksforgeeks.org/map-of-vectors-in-c-stl-with-examples/ Map of Vectors in C++ STL with Examples - GeeksforGeeks A Computer Science portal for geeks. It contains well written, well thought and well explained computer science and programming.. 2022. 7. 5.
[c++ 줍줍] vector 정리 1. Definition of Vector 1-1. Vector의 등장 배경 배열을 사용하려면 동적 할당을 해줘야 하는 C " 귀찮 " ex ) int *arr = malloc(sizeof(int) * size); // element의 type * size 만큼 동적 메모리 할당 free(arr); // 마지막에 동적 할당한 메모리를 해제시킴 1-2. Vector 란 ? C++의 STL(Standard Template Library)에 속한 container = 가변 size를 가진 배열 * element를 추가/삭제하면 자동으로 크기 조절됨 1-3. Size vs. Capacity Size Capacity vector에 현재 들어있는 element 개수 vector가 수용가능한 용량 (memory) 2.. 2022. 6. 14.
[c++ 줍줍] 대문자 <=> 소문자 ▷ 문제 상황 대문자 → 소문자 소문자 → 대문자 변환하기 ▶ 해결 방법 1 아스키 코드 숫자값 이용하기 대문자(A)와 소문자(a) 차이값 1st 알파벳(A) 와 last 알파벳(Z) 차이값 32 25 char small = s[i] - 32; // 대 -> 소 char large = s[i] + 32; // 소 -> 대 ▶ 해결 방법 2 이미 만들어져 있는 메소드 이용 ( #include 필요 ) 대 → 소 소 → 대 tolower(대) = 소 toupper(소) = 대 char small = tolower(s[i]); // 대 -> 소 char large = toupper(s[i]); // 소 -> 대 2022. 5. 30.