본문 바로가기

전체 글

(76)
[Visual Stduio] scanf_s 오류 무시하기 더보기 C4996 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. 그저 과제를 풀 뿐임에도, 마이크로소프트는 보안 상의 이유로 scanf 대신 scanf_s를 쓰라고 강요한다. 막상 scanf_s로 바꾸면 백준에서 또 컴파일 에러가 난다. 귀찮은 이 에러를 해결하는 법을 알아보자. 1. scanf_s 사용하기 당연하지만 가장 쉬운 방법은, scanf_s를 사용하는 것이다. 다만 scanf_s를 사용하면 백준 등 다른 컴파일러에 사용할 땐 컴파일 에러가 난다. 상당..
[언리얼5] error: The following untracked working tree files would be overwritten by merge: 이번엔 또 무슨 일인가? 언리얼도 닫은 채 제대로 Pull 했지만, 또 내 협업을 방해한 에러. error: The following untracked working tree files would be overwritten by merge: Content/ExternalActors/ThirdPerson/Maps/ThirdPersonMap/0/19/DYB0XCIHASHHYXQOQIBOXJ.uasset Please move or remove them before you merge. Aborting Updating 313ec35..a68d5c5 라는 문구가 뜨며 Pull에 실패했다. 무엇이 문제였나? 대부분의 원인은 에러 문구에 그대로 드러난다. 해석할 줄 몰라서 문제지. untracked file은 git이..
[언리얼5] warning: unable to unlink 이번엔 왜 이런 일이 GitHub Desktop 앱으로 Pull 하던 중, 위와 같은 에러가 뜨며 Pull에 실패했다. warning: unable to unlink ’Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/23/AQ1PWWT9TBAI7AA470T014.uasset’ : Invalid argument ’Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/A/IO/07IVU4EY14FMETPGTJULEO.uasset’ : Invalid argument Updating 313ec35..a68d5c5 라는 문구가 뜨며 Pull에 실패한 문제. 무엇이 문제였나? 다행히 원인은 간단했다. 언..
[백준/C++] 1057번. 토너먼트 문제 1057번: 토너먼트 김지민은 N명이 참가하는 스타 토너먼트에 진출했다. 토너먼트는 다음과 같이 진행된다. 일단 N명의 참가자는 번호가 1번부터 N번까지 배정받는다. 그러고 난 후에 서로 인접한 번호끼리 스타를 www.acmicpc.net 1. 첫 번째 풀이 (마지막 풀이) 사고 과정 - 일단 간단하게 구현으로 시작해보자. - 1부터 시작, i(홀수)와 i+1(짝수)를 서로 대진시킨다. - 이들은 다음에 어떤 번호를 받게 될까? - 일반적인 경우, 짝수 / 2의 번호를 받게 된다. (1, 2)는 1, (3, 4)는 2, (5, 6)은 3... - 홀수는? 홀수 / 2 + 1 번호를 받게 된다. - 경쟁자가 홀수인 경우엔 어떻게 되지? 25명이면 24는 12, 25는 13을 받는다. 문제없을 듯. -..
[백준/C++] 1074번. Z 문제 1074번: Z 한수는 크기가 2N × 2N인 2차원 배열을 Z모양으로 탐색하려고 한다. 예를 들어, 2×2배열을 왼쪽 위칸, 오른쪽 위칸, 왼쪽 아래칸, 오른쪽 아래칸 순서대로 방문하면 Z모양이다. N > 1인 경우, 배열을 www.acmicpc.net 1. 첫 번째 풀이 (마지막 풀이) 사고 과정 - 상당히 재귀적인 문제다. - 먼저 4등분으로 나눈다. Z의 순서에 따라, 각각 1, 2, 3, 4평면이라고 하자. - r행 c열은 넷 중 하나에 속하게 된다. - 만약 크기가 4x4고(N = 2), r행 c열이 4평면에 있다고 하자. 탐색이 4평면에 도달하려면, 2x2 칸을 세 번 지나야 한다. - 즉, 2^N 칸을 세 번 지나치므로, 12번 탐색부터 4평면에서 진행된다. (시작이 0이므로) - 이..
[GitHub] Push한 커밋 삭제하기 언리얼과 깃허브로 협업하기 위해 이것저것 테스트 중에, 실수로 Pull 하는 대신 Push를 해버렸다. 이미 커밋을 넘어 Push까지 했기 때문에, 다시 되돌리는 방법을 찾아나섰다. GitHub에 Push한 커밋 삭제하기 우선 로컬 리포지터리 폴더를 열고, 우클릭 - Git Bash here로 Git Bash를 실행해주자. 그리고 다음 절차를 따른다. 1. git log --oneline으로 삭제할 커밋 찾기 git log만 작성해도 충분하며, --oneline을 추가하면 모든 커밋을 한 줄로 보여준다. 마지막에 올린 HEAD 커밋을 삭제하고 싶다. 이는 main 브랜치가 아닌, KMC 브랜치에만 올라간 상태다. 2. git reset으로 커밋 삭제하기 삭제할 커밋을 찾았으니, 이제 삭제를 진행해보자. ..
[언리얼5] The following modules are missing or built with a diffferent engine version 원인도 참 다양하고, 그만큼 해결법도 참 다양한 팔방미인 같은 친구. 무한한 가능성을 가진 오류 계의 유망주. 진짜 다신 안 나타났으면 좋겠는 이 에러. 해결하는 법을 알아보자. 1. 프로젝트 경로에 한글이 있는 경우 가장 처음 만난 에러로, 경로 상 한글이 있는 경우다. 프로젝트 생성 시 위 화면을 동반하기도 하며 다시 열려고 하면 위 오류를 발생시킨다. 해결 방법 경로를 모두 영어로 변경한다. 나는 컴퓨터 이름도 한글로 해둬서, 항상 C 드라이브 바로 아래에 생성한다. 잘 열린다. 2. Intermediate, Saved, DerivedDataCache 폴더 충돌 언리얼 엔진은 Intermediate, Saved, DerivedDataCache 폴더를 갖고 있는데, 세 폴더의 역할은 다음과 같다. I..
[언리얼5/GitHub] .gitignore가 적용되지 않는 현상 프로젝트를 올리고, 내려받을 때마다 자꾸 에러가 떴다. 히스토리를 살펴보니, .gitignore에 들어있던 Saved, Intermediate 폴더가 그대로 리포지터리에 올라가고 있었다. 그제서야 .gitignore가 적용되지 않고 있음을 깨달았다. 원인 이전에 작업할 때 찍은 스크린샷이다. 절대 올라가선 안 될 AutoScreenshot.png가 4번째로 올라가 있다. 그리고 파일의 경로가 전부 UnrealTest\로 시작하는 걸 볼 수 있다. 이는 리포지터리 이름이 아닌, 프로젝트 파일들이 들어있는 폴더다. 즉, .gitignore는 해당 위치에서 Saved를 제외했지만 그런 폴더는 없었고, 실제로는 UnrealTest\Saved에 존재했던 것이다. 해결 - 프로젝트 파일 위치 변경 기존 내 로컬 리..