전체 글

한성대학교 컴퓨터 공학부 졸업 C++과 게임 프로그래밍에 대해 관심이 있습니다. Unreal Engine 5에 대해 공부하고 있습니다.
https://www.acmicpc.net/problem/10866 10866번: 덱 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 이 문제는 STL의 deque를 이용해서 큐를 만들면 해결할 수 있다. string 객체를 생성해 입력을 받아 if 문을 통해 명령이 무엇인지 판단한다. 그 후 명령에 따라 deque의 함수를 호출하면 된다. push_front와 push_back 명령의 경우 push_front와 push_back 함수를 사용한다. pop_front와 pop_back의 경우 비어있는지 알 수 있는..
https://www.acmicpc.net/problem/10845 10845번: 큐 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 이 문제는 STL의 queue를 이용해서 큐를 만들면 해결할 수 있다. string 객체를 생성해 입력을 받아 if 문을 통해 명령이 무엇인지 판단한다. 그 후 명령에 따라 queue의 함수를 호출하면 된다. push 명령의 경우 push를 사용한다. pop의 경우 비어있는지 알 수 있는 empty를 사용하여 큐가 비어있는지 확인한 후 요소가 있다면 가장 먼저 삽입된 요소를 알 수..
https://www.acmicpc.net/problem/10828 10828번: 스택 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 이 문제는 STL의 vector를 이용해서 스택을 만들면 해결할 수 있다. string 객체를 생성해 입력을 받아 if 문을 통해 명령이 무엇인지 판단한다. 그 후 명령에 따라 vector의 함수를 호출하면 된다. push 명령의 경우 push_back을 사용한다. pop의 경우 비어있는지 알 수 있는 empty를 사용하여 스택이 비어있는지 확인한 후 요소가 있다면 가장 최근에 ..
https://www.acmicpc.net/problem/10816 10816번: 숫자 카드 2 첫째 줄에 상근이가 가지고 있는 숫자 카드의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 숫자 카드에 적혀있는 정수가 주어진다. 숫자 카드에 적혀있는 수는 -10,000,000보다 크거나 같고, 10,0 www.acmicpc.net 이 문제는 맵을 사용해서 맵안에 key, value 쌍이 존재하는지 검사하면 된다. 맵의 key와 value를 정수형으로 선언한다 이때 key는 long으로 해야한다. 반복을 진행할 때 맵에 input에 해당하는 key, value 쌍이 존재하지 않는다면, input으로 key를 생성해 value를 1로 초기화한다. 만약 존재한다면 value를 증가시킨다. 이후..
https://www.acmicpc.net/problem/10814 10814번: 나이순 정렬 온라인 저지에 가입한 사람들의 나이와 이름이 가입한 순서대로 주어진다. 이때, 회원들을 나이가 증가하는 순으로, 나이가 같으면 먼저 가입한 사람이 앞에 오는 순서로 정렬하는 프로그램을 www.acmicpc.net 이 문제는 배열의 요소를 주어진 조건에 맞게 정렬해야한다. 배열의 요소는 나이와 이름을 넣고, 이름이 같을 때 들어온 순서대로 정렬하기 위해 규칙이라는 변수도 생성하였다. 위에서 정의한 요소는 class로 정의하여 배열에 삽입하였다. 정렬을 위한 함수는 bigger라는 이름으로 정의하였고, 나이가 같으면 규칙에 따라 내림차순으로 정렬하고, 나이가 다르면 나이 순서대로 내림차순으로 정렬하였다. #incl..
https://www.acmicpc.net/problem/9012 9012번: 괄호 괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고 www.acmicpc.net 이 문제는 괄호의 쌍이 맞는지 확인해야한다. 이를 위해 자료구조인 스택을 사용하였다. 먼저 입력된 문자들을 스택에 집어 넣는다. 그후 스택의 top을 꺼내서 열림 괄호인지 닫힘 괄호인지 확인한다. 스택을 사용했으므로 닫힘 괄호가 먼져 있는지 확인해야한다. 이를 위해 배열에 닫힘 괄호가 있다면 요소를 채운다. 열림 괄호가 스택에서 나온다면 배열에 닫힘 괄호가 들어와 있..
https://www.acmicpc.net/problem/2798 2798번: 블랙잭 첫째 줄에 카드의 개수 N(3 ≤ N ≤ 100)과 M(10 ≤ M ≤ 300,000)이 주어진다. 둘째 줄에는 카드에 쓰여 있는 수가 주어지며, 이 값은 100,000을 넘지 않는 양의 정수이다. 합이 M을 넘지 않는 카드 3장 www.acmicpc.net 처음 문제를 보고나서 배열 탐색을 위한 알고리즘을 생각 하였다. 우선 간단하게 배열의 요소를 하나씩 순회하기 위한 반복문을 작성하였다. 이때 3개의 요소를 뽑아서 합을 구해야하기 떄문에 순회는 3개의 변수를 이용해야 한다. 블랙잭의 결과가 M에 가깝게 나와야하기 때문에 최소 값을 담을 수 있는 변수를 생성하였다. M과 현재 합의 차가 최소 값 보다 작으면 블랙잭의 ..
실수 표현 방법 컴퓨터에서 실수를 표현하는 방법은 고정 소수점과 부동 소수점 두 가지 방식이 존재한다 고정 소수점(Fixed Point) 소수점이 찍힐 위치를 미리 정해놓고 소수를 표현하는 방식 정수 + 소수 간단히 말하면 10진수를 2진수로 바꿨다면 그대로 박아 넣는 방식 7.625라는 실수가 있다면 이를 2진수로 바꾸면 111.101이 될 것 -3.141592는 부호(-)와 정수부(3), 소수부(0.141592) 3가지 요소 필요함 장점 실수를 정수부와 소수부로 표현하여 단순하다 단점 표현의 범위가 너무 적어서 활용하기 힘들다. 정수부 15bit, 소수부 16bit 부동 소수점(Floating Point) 실수를 가수부 + 지수부로 표현한다 가수 : 실수의 실제 값 표현 지수 : 크기를 표현함. 가수..
hanseongbugi
부기'S 공부 노트