개발자 능력치 물약(21)
-
2025/03/17
📅 오늘의 일정시간학습 내용방식목표 시간목표내용달성여부13:00 ~ 13:40 (40분)기초 코테 3문제 풀이 (뇌 깨우기)🔄 문제 풀이 기반 학습X(14:30 까지 밥먹음)13:40 ~ 14:50 (70분)이론 학습: 병합 정렬 & 퀵 정렬📖 핵심 개념 요약백준 4문제 풀고 깃헙연동(문자열 파싱 , 최대공약수스택, 벡터 문제)14:50 ~ 16:20 (90분)병합 정렬 구현 (연결 리스트 기반)퀵 정렬 구현(배열 기반)✍ 직접 구현O(STL 없이 구현 & 비교)16:20 ~ 16:30 (10분)☕ 짧은 휴식🚶♂️ 가벼운 스트레칭집중력 회복16:30 ~ 17:50 (80분)STL 학습 (트리, 맵, 셋) & 직접 구현 연습🔥 실습 중심 학습O(STL 사용법 익히고 문제 풀이)17:50 ~ 1..
2025.03.17 -
0315 형변환 , L/Rvalue
템플릿은 인스턴스화 전까지 컴파일시 아무런 코드로 변환되지 않는다static 멤버 변수: 프로그램이 종료될때 사라짐, 모든객체들이 공유하는 변수const static 이 아니면 외부에서 선언, 선언시 0으로 초기화static으로 선언한 함수: 클래스::함수명 으로 호출, 함수내에서는 static으로 선언한 변수만 사용가능 초기화 리스트 : 생성자() : 변수(값), ... { }mutable : const 함수 안에서 변수를 수정하기 위해 씀 explicit: 명시적 형변환, 컴파일러가 마음대로 형변환해서 오류가 생기는걸 방지하기 위해 씀c++에는 static_cast, dynamic_cast 같은 발전된 형변환 기능이 있다. static cast는 컴파일 타임에 형변환 오류를 잡아줌dynamic_cas..
2025.03.15 -
인라인 함수와 매크로의 차이
매크로 C언어에서 매크로기능을 이용해 원하는 함수나 변수를 정의해서 쓸 수 있었다.#define PI 3.141592#define WINSIZE_X 1080#define WINSIZE_Y 500#define DEG_TO_RAD(degree) ((3.14 / 180.0) * degree) 매크로의 장점 : 함수 호출이 필요없다.매크로의 단점: 디버깅이 힘들다. 함수가 길어지면 불편하다. 남발하면 소스코드의 길이가 길어진다. 타입체크 무시, namespace 무시한다.인라인함수// 매크로 :#define MUL(x,y) ((x)*(y))// 인라인 :inline int MUL(int x,int y) { return x*y;} inli..
2025.03.10 -
프로그래머스 레벨0: 두 수의 연산값 비교하기
문제작성코드#include #include using namespace std;int solution(int a, int b) { int answer = 0; string ab = to_string(a) + to_string(b); int mul_ab = 2 * a * b; int str_ab = stoi(ab); if(str_ab > mul_ab){ answer = str_ab; } else answer = mul_ab; return answer;} 고쳐야 할 점 가독성이 떨어져서 변수선언을 간소화하고 stl 알고리즘의 max함수를 사용했다. 수정코드#include #include #include using namespace std;int ..
2025.02.23 -
프로그래머스 레벨 0: 더 크게 합치기
작성 코드#include #include using namespace std;int solution(int a, int b) { int answer = 0; //a와b를 문자열로 변환 string str_a = to_string(a); string str_b = to_string(b); // (a,b) (b,a) 연산을 수행함 string a_b = str_a + str_b; string b_a = str_b + str_a; // 연산 결과를 int 로 변환 int num_a_b = stoi(a_b); int num_b_a = stoi(b_a); // 대소비교후 큰 값 answer에 저장 if(num_a_b> num_b_a){ ..
2025.02.23 -
프로그래머스 레벨0_ 문자열 섞기
작성코드#include #include using namespace std;string solution(string str1, string str2) { string answer = ""; str1.append(str1); //str2값을 answer짝수번에 복사 for(int i = 0; i 실행결과 str1이 순서가 있는 문자열일 경우 실행 결과가 일치 하지 않았다. 원인 str1.append(str1); // str1이 "abcde"에서 "abcdeabcde"가 됨for (int i = 0; i 이 부분을 실행하면 i=0: str1[1]는 'b' → 변경 전에도 'b'라서 그대로 i=1: str1[3]는 원래 'd' → 'b'로 변경 ..
2025.02.23