본문 바로가기

분류 전체보기373

[ 백준 9465 ] 스티커 (C++) 9465번: 스티커 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스의 첫째 줄에는 n (1 ≤ n ≤ 100,000)이 주어진다. 다음 두 줄에는 n개의 정수가 주어지며, 각 정수는 그 위치에 해당하는 스티커의 www.acmicpc.net 문제! 상근이의 여동생 상냥이는 문방구에서 스티커 2n개를 구매했다. 스티커는 그림 (a)와 같이 2행 n열로 배치되어 있다. 상냥이는 스티커를 이용해 책상을 꾸미려고 한다. 상냥이가 구매한 스티커의 품질은 매우 좋지 않다. 스티커 한 장을 떼면, 그 스티커와 변을 공유하는 스티커는 모두 찢어져서 사용할 수 없게 된다. 즉, 뗀 스티커의 왼쪽, 오른쪽, 위, 아래에 있는 스티커는 사용할 수 없게 된다. 모든 스티커를 붙일 수 없게된 상냥이는 각 스티커.. 2023. 6. 11.
[ 백준 11404 ] 플로이드 (C++) 11404번: 플로이드 첫째 줄에 도시의 개수 n이 주어지고 둘째 줄에는 버스의 개수 m이 주어진다. 그리고 셋째 줄부터 m+2줄까지 다음과 같은 버스의 정보가 주어진다. 먼저 처음에는 그 버스의 출발 도시의 번호가 www.acmicpc.net 문제! n(2 ≤ n ≤ 100)개의 도시가 있다. 그리고 한 도시에서 출발하여 다른 도시에 도착하는 m(1 ≤ m ≤ 100,000)개의 버스가 있다. 각 버스는 한 번 사용할 때 필요한 비용이 있다. 모든 도시의 쌍 (A, B)에 대해서 도시 A에서 B로 가는데 필요한 비용의 최솟값을 구하는 프로그램을 작성하시오. 설명이 간단한 문제... 이해하는데는 어려운 점이 없어보입니다! 그럼 어떻게 풀어나가야할까요.. 일단 구해야하는건 각 지점에서 다른 지점으로 가는 .. 2023. 6. 10.
유니티(Unity) 의 가장 기본/기초 클래스[Class]에 대해서 유니티에서 스크립을 하나 생성하면 기본적으로 이런 클래스에 MonoBehaviour이 상속되는 형태로 생성됩니다. 이번엔 이런 클래스가 정확히 무엇인지, 어떻게 사용하는지도 알아보겠습니다. 클래스를 알아보기 전에 객체 지향 프로그래밍에 대해서 정리해 보겠습니다. 객체 지향 프로그래밍? 객체 지향 프로그래밍은 객체(=오브젝트)를 이용하여 프로그램을 처리하도록 프로그래밍하는 기법으로 코드를 객체/ 블록단위로 구성하여 설계/구현하는 방법입니다. 객체 지향 프로그래밍을 사용하는 이유로는 아래와 같은 점들이 있습니다. 1. 캡슐화 : 객체내부의 데이터를 외부에서 직접적으로 접근할 수 없도록 막을 수 있다. 2. 상속 : 코드상 이미 구현된 내용을 상속을 통해 쉽게 재사용할 수 있다. 3. 다형성 : 동일한 이름의.. 2023. 6. 9.
[ 백준 11725 ] 트리의 부모 찾기 (C++) 11725번: 트리의 부모 찾기 루트 없는 트리가 주어진다. 이때, 트리의 루트를 1이라고 정했을 때, 각 노드의 부모를 구하는 프로그램을 작성하시오. www.acmicpc.net 문제! 루트 없는 트리가 주어진다. 이때, 트리의 루트를 1이라고 정했을 때, 각 노드의 부모를 구하는 프로그램을 작성하시오. 간단하네요.... 루트노드가 1일때 단순히 연결된 노드들의 쌍을 입력받으면 각 노드의 부모를 출력하면 되는 문제! 여기서 가장중요한 부분은 연결된 쌍만가지고 어떻게 트리를 구성해야하나..... 저는여기서 bfs탐색을 이용해 보기로 했습니다. 루트노드인 1번 노드부터 차례대로 연결된 노드들을 탐색하는 방법! 그러기위해서 다음과 같은 과정을 거쳐야합니다. 1. 연결된 쌍에 대해서 저장 2. 부모를 찾을때 .. 2023. 6. 9.
유니티(Unity) 인스펙터창 관리 / [HideInInspector] ? , [SerializeField] ? 라이브러리 파일들을 보고 있으면 SerializeField .... HideInInspector 등의 키워드가 많이 보입니다. 이번엔 이것들이 무엇이고 다른 것들은 어떻게 사용되는지에 대해 정리해 보겠습니다. 먼저 위의 것들을 인스펙터 속성 이라고 합니다. Inspector Attribute? 이것에 앞서 인스펙터란? 유니티를 실행해서 아무 오브젝트를 클릭하게되면 아래처럼 뜨게 되는데 이것이 인스펙터, 즉 속성창 입니다! 인스펙터를 이용해서 오브젝트의 상태, 위치, 컴포넌트 제거/추가/수정 할 수있으며 스크립의 내부 변수를 설정 할 수도 있습니다. HideInInspector, SerializeField 등등 여러 인스펙터 어트리뷰트들은 스크립 컴포넌트의 변수들을 어떤식으로 표현할까, 입력 받을까에 대해.. 2023. 6. 8.
[ 백준 13549] 숨바꼭질3 (C++) 13549번: 숨바꼭질 3 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 www.acmicpc.net 문제! 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 때 걷는다면 1초 후에 X-1 또는 X+1로 이동하게 된다. 순간이동을 하는 경우에는 0초 후에 2*X의 위치로 이동하게 된다. 수빈이와 동생의 위치가 주어졌을 때, 수빈이가 동생을 찾을 수 있는 가장 .. 2023. 6. 8.