본문 바로가기

반응형

C, C++, C#

(30)
MFC - typeid를 이용한 문자열 형변환 소스코드 안녕하세요. 아주 간단한 형변화 함수를 작성해 두려고 합니다. 간단하게 template와 typeid를 통해 사용하시면됩니다. #include "iostream" template CString GetValueToString(T& tVal) { CString str = L""; if(typeid(tVal).name() == typeid(int).name()) { str.Format(L"%d", tVal); } else if(typeid(tVal).name() == typeid(float).name() || typeid(tVal).name() == typeid(double).name()) { str.Format(L"%f", tVal); } else if(typeid(tVal).name() == typeid(..
프로그래머스 - 124 나라의 숫자 이번에 풀어본 문제는 124나라의 숫자(12899번)문제를 풀어보았다. 풀어본 모든 문제를 포스팅 하는 것은 아니지만.... 어렵지 않은 문제인데 너무 헤맸다....(3시간이나 걸렸다...) 물론 나 홀로 혼돈의 미로 속으로 빠졌기 때문이다... 코딩테스트 연습 > 연습문제 > 124 나라의 숫자 programmers.co.kr/learn/courses/30/lessons/12899 문제 : 124 나라가 있습니다. 124 나라에서는 10진법이 아닌 다음과 같은 자신들만의 규칙으로 수를 표현합니다. 124 나라에는 모든 수를 표현할 때 1, 2, 4만 사용합니다. 문제를 보고 2가지를 떠올려서 코딩을 하였다.(누구나 쉽게하는 생각..) 1. 10진법을 3진법 전환 2. 진법 변환 시 나누기, 나머지로 1..
알고리즘 종류 Greedy(탐욕, 그리디 알고리즘) : 현재 상태의 최적을 선택해서 결과를 추출한다. > Sorting, DP의 느린 속도를 보완하기 위함 # 부분적인 최적해 DP(Dynamic Programming, 동적 계획법) : 모든 상황의 최적을 찾아내서 결과를 추출한다. > 점화식, 메모이제이션, 재귀 or 반복문 설계 # 최단거리 길 찾기, 노드의 최대 값 찾기
프로그래머스 - 정수 삼각형 내가 풀어본 문제(못 풀고 다른분들의 풀이를 보고 개념을 이해해서 다음 문제를 기약하기로했따.)는 프로그래머스의 43105번 문제이다. 코딩테스트 연습 > 동적계획법(Dynamic Programming) > 정수 삼각형 url : programmers.co.kr/learn/courses/30/lessons/43105 int solution(vector triangle) { int answer = 0; //! 아래 노드의 2개의 값과 더해줘야 하기 때문에 하단 결과 입력 메모리를 2배로 만들어줌 vector dp(triangle.size()); for (size_t i = 0; i < triangle.size(); i++) { //! 처음꺼도 계산해야하므로 처음껀 1개만 입력! if(i == 0) dp[i..
DP(Dynamic Programming) - 동적 계획법 요새 알고리즘을 공부하다보니 전략(?)에 대해 접근 방법이 있는 걸 조금씩 알게되고 있어서 잊지 않게 포스팅을 하려고한다. (다들 파보나치로만 나는 바보라서 더 헷갈렸다... 하지만 파보나치만큼 DP에 딱 맞는 예시는 없는거 같다.) 다른분들의 포스팅에서 매우 상세하게 되어있기 때문에 내가 이해한 내용만 적고 넘어가려한다.(난 정말 쉽고 정확하게 이해하지 않으면 안되기에 매우 허접한 용어로...) 동적 계획법을 풀기위해 필요한것! 1. 점화식 2. 큰 문제를 작은문제로 쪼개 풀기 or 작은문제부터 쭉 해결해나가기 3. 메모이제이션(똑같은 계산 결과는 저장하자) 1. 점화식 "점화식을 만족하는 수열을 점화식의 해"라고 한다.(그래서 최적해 찾기라는 말이 있나보다) -> 쉽게 생각하면 아래 int GooGo..
MFC Log 클래스 안녕하세요. MFC환경에서 사용 가능한 로그 클래스입니다. 프로그램 작동 중 로그를 남길 일이 많아 클래스를 만들어 공유합니다. 로그 클래스는 해당 깃으로 들어가 다운 받으시면 됩니다. Url : https://github.com/kjky12/ClassLog.git 저는 해당 로그 클래스를 싱글톤 패턴으로 이용하기 위해 최상위 헤더에 선언하였습니다. 개발 환경은 Visual Studio에서 수행했으며 버전에 따라 서로 다른 파일에 선언해줍니다.(구조가 바뀐 것으로 보이네요) 1. 해당 클래스를 프로젝트에 추가해줍니다.(추가하지 않으면 외부종속성 함수 에러가 발생합니다.) 2. 초기 클래스를 선언해줍니다. Visual Studio 2012, vs2013 Visual Studio 2019 ----------..
Visual Studio 전처리 안녕하세요. 오늘은 Visual Studio 전처리 방법에 대한 포스팅입니다. 전처리에 대한 내용도 에러에 따라 조금씩 추가로 정리할 수 있도록 하겠습니다. 다들 보기 쉽도록 에러->추가해야할 전처리에 대해 가장 보기 쉽게 작성해 보겠습니다. 일단 전처리를 추가하는 방법에 대해 설명하겠습니다. 1) 솔루션 탐색기 -> 해당 프로젝트 -> 속성 클릭 2) 구성속성 -> C/C++ -> 전처리기 -> 전처리기 정의 우측 화살표 -> 편집 클릭(※해당 처리에서 구성 속성 밑 항목이 없는 경우는 1) 수행에서 솔루션 속성을 선택했는지 확인 바랍니다.) 3)해당 리스트에서 추가할 전처리기 정의를 입력하고 확인을 클릭합니다. 아래는 에러와 추가해야할 전처리 정의를 설명하겠습니다. -------------------..
copy stl vector<->array 형변환 정리 안녕하세요. 오늘은 stl vector와 array의 복사에 대해 정리를 하려고 합니다. 점점 개발을 하면서 형식이 다른 정보를 넘겨줄 때가 헷갈릴때가 많이 생기네요 오늘 정리 내용은 그 중에서 가장 많이 사용하는 stl에 대한 복사 입니다. copy에 대한 내용을 점점 추가 할 예정이기 때문에 소스코드는 가장 하단에 첨부 했습니다. ※여기서 주의 할 점은 stl에서 제공하는 copy 사용 시 Visaul Studio 버전에 따라 동적할당(new)해서 처리되는 copy를 오류로 처리됩니다. 오류 발생시 Visual Studio 전처리 1번 항목을 수행해주시기 발랍니다.(링크) 아래 소스코드를 보시면 쉽게 확인할 수 있습니다. ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ //2..

반응형