# C/C++
백준/11652/sort||map/카드
백준/11652/sort||map/카드sort 또는 map을 사용해야 하는 문제입니다. 적혀있는 수는 -2^62보다 크거나 같고, 2^62보다 작거나 같다.일단 이 지문을 통해 배열을 int type으로 선언하지 않아야하는것을 알 수 있습니다.일단 값을 받는 배열은 l
백준/1431/sort/시리얼 번호
백준/1431/sort/시리얼 번호STL_sort 연습겸 문제를 풀어봤는데 어려웠다.sort(시작점,끝점,sort의 기준이되는 함수)를 사용하는 문제인데 A와 B의 길이가 다르면, 짧은 것이 먼저 온다.만약 서로 길이가 같다면, A의 모든 자리수의 합과 B의 모든 자리
정렬 개념 정리
가장 간단한 정렬 알고리즘으로 가장 큰 변수를 색출하여 맨 왼쪽으로 옮기는 작업을 반복하는 작업이다.가장 큰 수를 색출하기 위해 정렬된 수를 제외한 배열을 계속 탐색해야하니 시간 복잡도가 높다.시간 복잡도는 O(N^2)이다.기본적인 정렬 알고리즘으로 선택 정렬과 다르게
[C/C++] C/C++ 컴파일 과정을 '조금만 더' 자세히 알아보자 (feat. guard macro)
저는 C언어를 대학교 1학년 1학기 때 처음으로 접했습니다. 이때 \`\`\`\`c/ ...some code here... /이런 방법도 있습니다. 보통 Windows환경에서 C/C++ 개발을 진행하다보면 마주치게 되거나 처음부터 이렇게 배웠을 수도 있습니다. 하지만

백준/1182/백트래킹/부분수열의 합
백준/1182/백트래킹/부분수열의 합이번은 백트래킹을 이용한 조합 유형 문제입니다.우선 위와같은 순열 함수를 하나 짜고 저기서 어떻게 변형 시켜야 조합 함수가 될 수 있을까 생각해보았습니다.순열은 다른 배열과의 차이점을 순서로 나타내고 조합은 순서를 상관하지 않기 때문

백준/9663/백트래킹/N-Queen
백준/9663/백트래킹/N-Queen백트래킹을 이용한 문제로 각 행을 내려갈때마다 해당 위치에 퀸을 놓을 수 있을지 없을지를 검사하는 방법을 사용했다.위와 같이 cur에 현재 위치에 표시를 했을 경우 다음 칸으로 넘어가니 일단 행은 검사할 필요가 없습니다.위와 같이 이
백준/4949/stack/균형잡힌 세상
백준/4949/stack/균형잡힌 세상stack를 활용한 문제간단하게 여는 괄호가 들어오면 stack에 쌓고 닫는 괄호가 나오면 stack에 쌓인 가장 최근 요소를 가져와 닫는 괄호와 짝이 되는 경우에는 통과하고 아니면 break 후 result를 no로 바꾸고 그 r
백준/14499/simulation/주사위 굴리기
백준/14499/simulation/주사위 굴리기구현 문제로 직접 주사위를 굴려보는등 시간이 오래걸렸다.결과값을 도출하는 과정은 1\. 맵에서 주사위가 현재 존재하는 위치2\. 주사위가 맵에 맞닿은 면의 종류3\. 그 맞닿는 면적과 대칭되는 면 구하기1번 과정은 cur
[TIL] fread 로 int 읽기 (05.31)
fread는 Binary File을 읽는 함수이다. 파일로부터 정수 하나를 읽어들이는 프로그램이다. fscanf로 읽을 때는 정상적으로 동작하지만 fread로 읽을 때는 오류가 발생합니다.이는 fread과 fwrite이 Binary File을 Byte 단위로 읽을 때
[TIL] 안쓰니까 다시 헷갈리는 포인터 개념, 다시 정리하고 넘어가보자.
안쓰니까 자꾸 헷갈려버리듯 하는 포인터 개념을 다시 정리해봅니다. 포인터도 함수에 매개변수로 넘겨줄 때 call by reference, call by copy의 원리를 적용받는다. 아래의 코드는 포인터를 부모함수에서 선언하고 서브프로그램에서 조작을 가할 때 자주 하
백준/2252/toplogical sort/줄 세우기
백준/2252/toplogical sort/줄 세우기toplogical 문제로 두 사람의 키를 비교해서 차례대로 세우는 문제입니다. 위에서부터 adj는 인덱스가 선수 요소를 뜻하고 해당 요소를 선수 요소로 두는 요소들을 저장한다. queue는 해당 선수 요소의 in
백준/15649/백트래킹/N과 M(1)
백준/15649/백트래킹/N과 M(1)백트래킹에 가장 기본 개념인 순열을 이용하는 문제로문제는 1부터 N라는 수에서 M번을 뽑아 만들 수 있는 순열을 출력하는 것을 원하므로k라는 순열의 순서를 정의하고 이 M번을 뽑았을 경우 출력하게 조건을 걸어둔 뒤아래에서 for문을

[C/C++] 개발환경 조성기...
저는 Windows 사용자이고 Windows를 상당히 좋아합니다. 그래서 처음 코딩을 배울적에도 Windows에서 배웠고, MSVC++ 컴파일러로 개발을 진행했습니다. MSVC++는 Visual Studio로 C++개발환경을 설치하면 자동으로 설치되며 Microsoft
백준/4179/BFS/불!
백준/4179/BFS/불!BFS 유형중에서 시작지점의 유형이 두 종류일 경우입니다.처음에는 큐를 두 종류로 나눠서 생각해야되나 했습니다.그렇게 불을 피하는 진수 큐와 불 큐로 나눠서 BFS를 시도하려했습니다.구현을 하기전에 로직을 짜기위해 그림을 그려보니 전에 토마토와
백준/7576/BFS/토마토
백준/7576/BFS/토마토 BFS 유형에서 탐색 시작점이 여러개일 경우입니다. 로직은 미로찾기와 마찬가지로 day라는 배열을 따로 선언하여 시작점을 기준으로 너비 우선 탐색을 하여 더 이상 탐색할 곳이 없으면 종료하는것을 전제로 하였습니다. > 위에 코드에 coun