2024/12 10

[백준] 1797 균형잡힌 줄서기

1797번: 균형잡힌 줄서기풀이 아이디어일렬로 세웠을 때 성별의 수가 같은 가장 긴 그룹을 구하는 문제이다. 데이터의 범위가 적으면서 이 문제와 결이 비슷한 문제가 많은데데이터의 범위가 적을 경우한 방향 누적합을 통해 시작 지점과 끝 부분의 누적합을 빼서 성별의 균형을 유지하는 식으로 브루트포스를 진행한다면O(n^2)으로 해결할 수 있다. 그러나 해당 문제는 n이 100만임으로 브루트포스를 진행하면 시간오버가 나게 된다. 이 문제를 푸는데 핵심은문제에서 요구하는 것이 가장 긴 연속적인 선분이라는 것과map을 통한 계산이다. 가장 긴 연속적인 선분이라는 것은 전체에서 조건에 부합하는 양쪽 선분을 제외한 것과 동치라는 것이다.위와 같이 생각한다면 우리가 구하려는 것은 전체에서 성별의 균형을 이루도록 하는 좌..

[백준] 5875 오타

5875번: 오타  풀이 아이디어어떻게 풀어야 되나 고민했지만, 아이디어를 떠올리지 못해누적합이라는 태그를 봐버렸고, 누적합을 사용 할 수 있었다. 먼저 누적합이란 것을 알고나면괄호를 수정했을 때 경우의수가 1개이상 나오는 데이터들은누적합이 2나 혹은 -2라는 것을 알 수 있다.(괄호의 갯수가 2개 차이나야 하니) 일단 이 이외에 모든 경우는 제외시키자. 그 다음누적합을 통해 양쪽방향으로 각각 한번씩 누적합을 구해괄호 갯수에 대한 갯수를 구한다. 그렇게하면특정 지점까지의 좌측 방향 누적합과 우측 방향 누적합을 알 수 있고괄호에 따라서 이 차이가 +- 2가 되는 경우에  해당 지점을 수정했을 때 좌우 괄호의 균형이 맞는 다는 것을 알 수 있다.일단 이 지점에 대해 구해야 한다. 그러나 중요한 건 좌우 갯수..

[백준] 31864 눈송이 탕후루 만들기

31864번: 눈송이 탕후루 만들기       풀이 아이디어0,0에서 끝점까지의 선을 기준으로 하기 때문에모든 탕후루는 반드시 기울기가 같은 끝점에만 꽂힐 수 있다. 따라서 끝점을 기준으로 순회하며0,0과 끝점사이의 기울기가 같은 탕후루가 몇개인지를 확인하면 되는 문제이다. 브루트포스로 풀 경우 최악의 경우 모든 눈송이와 끝점이 같은 선상에 있는 경우가 존재하며따라서 O(n*m)이 나올 수 있다.  그렇기 때문에 최적화 방법으로 이분탐색을 추가했다. 기울기를 키값 하는 배열을 만든 다음x좌표를 벨류 값으로 넣고 정렬 시켰다. 그 다음 입력 받는 좌표로 기울기를 구한다음 그 기울기에 해당하는 배열에서 x값을 토대로 이분탐색해서갯수를 구했다.x나 y좌표가 0일때도 있는데 이건 예외처리해서 다른 배열에 담아서..

[DOTween Pro] 3. Sequence

[공식문서]DOTween - Documentation DOTween - DocumentationNomenclature Tweener A tween that takes control of a value and animates it. Sequence A special tween that, instead of taking control of a value, takes control of other tweens and animates them as a group. Tween A generic word that indicates both a Tweenerdotween.demigiant.com 앞 장에서 Tweener의 사용 방법을 알았으니 이제 Sequence를 더 살펴볼 차례다. Sequence공식 문서에서 이..

[백준] 16957 체스판 위의 공

16957번: 체스판 위의 공시간 제한메모리 제한제출정답맞힌 사람정답 비율2 초512 MB212282359838.309%문제크기가 R×C인 체스판이 있고, 체스판의 각 칸에는 정수가 하나씩 적혀있다. 체스판에 적혀있는 정수는 모두 서로 다르다.체스판의 각 칸 위에 공을 하나씩 놓는다. 이제 공은 다음과 같은 규칙에 의해서 자동으로 움직인다.인접한 8방향 (가로, 세로, 대각선)에 적힌 모든 정수가 현재 칸에 적힌 수보다 크면 이동을 멈춘다.그 외의 경우에는 가장 작은 정수가 있는 칸으로 공이 이동한다.공의 크기는 매우 작아서, 체스판의 한 칸 위에 여러 개의 공이 있을 수 있다. 체스판의 상태가 주어진다. 공이 더 이상 움직이지 않을 때, 각 칸에 공이 몇 개 있는지 구해보자.입력첫째 줄에 체스판의 크기..

[DOTween Pro] 2. Tweener

[공식 문서]DOTween - Documentation DOTween - DocumentationNomenclature Tweener A tween that takes control of a value and animates it. Sequence A special tween that, instead of taking control of a value, takes control of other tweens and animates them as a group. Tween A generic word that indicates both a Tweenerdotween.demigiant.com 앞서 문서에서 간단하게 DOTween을 사용해 봤다.DOTween은 애니메이션를 당당하는 Tweener와 그 Tweene..

[백준] 1082 방 번호

https://www.acmicpc.net/problem/1082  방 번호 문제 스타트링크가 입주한 사무실은 방 번호를 직접 정할 수 있다. 방 번호를 정하려면 1층 문방구에서 파는 숫자를 구매해야 한다. 숫자를 구매하기 위해 준비한 금액은 M원이다.문방구에서 파는 숫자는 0부터 N-1까지이고, 각 숫자 i의 가격은 Pi이다. 문방구에서는 같은 숫자를 여러 개 구매할 수 있고, 문방구는 매우 많은 재고를 보유하고 있기 때문에, 항상 원하는 만큼 숫자를 구매할 수 있다. 방 번호가 0이 아니라면 0으로 시작할 수 없다.예를 들어, N = 3, M = 21, P0 = 6, P1 = 7, P2 = 8이라면, 만들 수 있는 가장 큰 방 번호는 210이다. 최대 M원을 사용해서 만들 수 있는 가장 큰 방 번호를..

[DOTween Pro] 1. DOTween 개념 정리 및 사용법

참고(DOTween 공식 문서)https://dotween.demigiant.com/documentation.php DOTween - DocumentationNomenclature Tweener A tween that takes control of a value and animates it. Sequence A special tween that, instead of taking control of a value, takes control of other tweens and animates them as a group. Tween A generic word that indicates both a Tweenerdotween.demigiant.com [DOTween 명명법]Tweener: 값을 제어하고 애니메..

[DOTween Pro] 0. DOTween 개요

[DOTween 이란]DOTween은 Unity에서 사용되는 애니메이션 및 트위닝 그리고 객체 지향 애니메이션 라이브러리이다. 여기서 트위닝이란 인비트위닝 (inbetweening) 의 줄임말로, 키 프레임 사이의 프레임 값들을 파라미터를 통해 적절하게 계산해주는 프로세스라고 보면 된다. 사용자 입장에선 키프레임과 파라미터만 적절히 입력하면DoTween이 알아서 계산하고 처리 해주기 때문에 개발면에서 아주 편리해진다.  [공식 사이트]https://dotween.demigiant.com/index.php DOTween (HOTween v2)DOTween is a fast, efficient, fully type-safe object-oriented animation engine for Unity, opt..

유니티 실행 시 소리가 안 들릴 때

유니티 에디터 실행시 소리가 음소거 되어 안 들리는 경우가 있다. 다음과 같은 절차를 걸처보자. 1.  오디오 리스너 여부 보통 메인 카메라에 기본으로 달려있으나 실수로 삭제했을 수도 있다.   2. Scene창에서 오디오 뮤트 여부오디오 토글이 꺼져있는지 확인하다.   3. Game창에서 오디오 뮤트 여부만약 Scene창의 토글을 켰는데도 에디터 실행시 자동으로 토글이 꺼진다면Game창의 토글이 꺼져있는 경우이다.   4. Build setting - player settings - audio 확인 5. 컴퓨터 스피커 문제 및 그외의 설정이외에도 여러 문제가 있을 수 있다.   유니티 사용하다 보면 다들 3번 때문에한번 정도 막히는 것 같다.