분류 전체보기
[브1] 25425 - 운동회
#include #include using namespace std;using ll = long long;int main() { ll n, m, a, k; ll max, min; cin >> n >> m >> a >> k; auto val = (a - k) / m; if (a - k >= n - 1) max = n; else { max = a - k + 1; if (a - k == 0) { cout
[Unity] 카메라 스테이킹 (Camera Staking)
개념카메라 스테이킹이라는 기술은 단일 카메라가 아닌 여러 카메라를 사용해서 렌더링 이미지를 만들고 해당 렌더링 이미지를 순차적으로 겹쳐서 표현하는 방식이다. Unity 카메라 컴포넌트는 렌더링에 필요한 것보다 많이 사용하지 않도록 해야하는데. 예를 들어, 여러 카메라를 사용하여 UI 레이어를 구성하게되면 모든 카메라 컴포넌트는 실제로 유용하게 사용되지 않더라도 오버헤드를 유발한다. 고사양 타겟 플랫폼에서는 무시할 수 있는 수준이지만, 저사양 또는 모바일 플랫폼에서는 각각 최대1ms의 CPU 처리 시간이 소요될 수 있다.렌더링 순서1. 레이어 컬링 (레이어 제외02. 절두체 컬링 (카메라 외부 프로젝트 제외)3. 오클루전 컬링 (완전히 숨겨진 오브젝트 제외)카메라 개수에 따른 성능 확인 (Built in)..
[브1] 1356 - 유진수
#include #include using namespace std;int main() { string N; cin >> N; int tempLeft = 1; for (int i = 0; i
[Unreal] EnhancedInput 시스템이란?
언리얼 엔진 5의 Enhanced Input 시스템은 기존의 입력 시스템(Input System)을 대체하여 보다 유연하고 강력한 입력 처리를 제공한다. 이 시스템은 다양한 입력 디바이스를 통합 관리하고, 더 복잡한 입력 매핑과 처리 로직을 지원한다. Enhanced Input의 주요 개념Input Mapping Contexts:입력 맵핑 컨텍스트는 여러 입력 액션(Input Actions)을 그룹화하는 역할을 한다.특정 상황이나 상태에서 활성화될 수 있으며, 여러 컨텍스트를 겹쳐 사용할 수 있다.예를 들어, 걷기 상태와 운전 상태에 따라 다른 입력 맵핑 컨텍스트를 사용할 수 있다.Input Actions:입력 액션은 단일 입력 이벤트(키 누르기, 마우스 클릭 등)를 나타낸다.디지털 입력(키보드, 버튼..
[C++] cin.ignore와 버퍼에 대한 이해
cincin은 character input의 약자로, 버퍼의 값을 읽어온다. 만약 버퍼에 읽어올 값이 없으면 표준 입력 스트림으로부터 입력을 받아와 버퍼에 저장하고나서 버퍼의 값을 읽어온다.입력을 받는다는 것이 아닌 버퍼를 먼저 읽으려고 한다는 관점이 중요하다. (버퍼는 자료구조 queue와 유사하다. 선입선출로 작동한다.) cin >>은 공백 (스페이스, 탭, 줄바꿈) 문자를 기준으로 끊어서 읽어오고, 공백문자는 무시한다#include using namespace std;int main() { char name[100]; cout > name; cout 0. 버퍼에 다음과 같이 저장된다. [ j ] [ o ] [ h ] [ n ] [ ' ' ] [ n ] [ a ] [ n ] [ a ]..
[브2] 12605 - 단어순서 뒤집기
이미 cin을 한번 했기 때문에 ignoreint main(){ int n, t = 1; cin >> n; cin.ignore(); while (n--) { string str, tmp; getline(cin, str); stringstream ss(str); stack s; while (ss >> tmp) s.push(tmp); cout
[C++] std::map을 value 기준으로 정렬하기
std::map 정렬map의 자료구조는 기본적으로 key 값 기준 오름차순 기반 정렬을 하고 있다template , // map::key_compare class Alloc = allocator > // map::allocator_type > class map; 만약 우리가 key 값 기준 내림차순으로 변경하기 위해선 3번째 인자에 greater()를 넣어주면 된다// 키, 데이터, comparemap> m;value 값 기반 정렬하기map에는 정렬 함수가 따로 없어서, vector를 활용해야한다. 구체적으로, map은 tree형태로 되어져있고, tree 형태를 만드는 과정에서 key을 기준으로 정렬을 한다. 완성된 tree를 ..
[C++] set, map 정렬 기준 바꾸는 방법
C++ STL에서 제공하는 set, map, multiset, multimap 등의 컨테이너는 자동으로 데이터를 정렬된 상태로 유지시켜 준다. 그래서 이러한 컨테이너에 데이터를 넣고 그대로 출력하기만 하면 오름차순으로 정렬된 데이터를 얻을 수 있지만 가끔은 내림차순 정렬이 필요하거나 내가 원하는 방식대로 정렬되어야 하는 경우도 생긴다. set의 템플릿 (template)을 살펴보면 다음과 같이 되어 있다template , class _Alloc = allocator> _Kty 부분은 흔히 사용하는 키 타입을 설정하는 부분이다. 우리가 봐야 할 부분은 _Pr이다 기본 값으로 less가 설정된 모습을 볼 수 있는데 이 less는 아래와 같이 정의되어 있다template struct less { _CXX..
[실5] 7785 - 회사에 있는 사람
리스트는 O(n^2)이라 시간초과int main(){ int n; cin >> n; list l; while (n--) { string s1, s2; cin >> s1 >> s2; if (s2 == "leave") l.remove(s1); else l.push_back(s1); } l.sort([&](string l, string r) { return l > r; }); while (!l.empty()) { cout 정답) 값 추가할 때마다 재정렬해줌int main(){ int n; cin >> n; set> s; map> m; while (n--) { string s1, s2; cin >> s1 >> s2; if (s2 == "leave") m[s1] = " "; e..
[실4] 14425 - 문자열 집합
int main(){ int n, m; cin >> n >> m; map d; for (int i = 0; i > str; d[str] = true; } int cnt = 0; while (m--) { string str; cin >> str; cnt += d.contains(str); } cout