알고리즘 문제 해결전략 1편 발췌 예전에 해당 책을 읽다 기억에 오래 남았던 문제 한가지가해당문제다 결과값이 ㅡ2 이여야 할거같지만위 이미지처럼 4294967294가 나온다.해당값이 나오는 이유를 아래를 보기전에 생각해보자a: unsigned char , b: short (a + b ) :int * c : int (a+b) *c : int + d unsigned int (a+b)*c+d : unsigned int마지막 전체 수식의 답을 계산하는부분. d를 더하면서 전체 수식이 부호없는 정수형으로 변환 되는데 -2 는 자료형에 담기에 너무작은 값이기 때문에 오버플로우가 일어나값이 강제로 부호없는 정수로 캐스팅 되는 과정에서 큰..
https://school.programmers.co.kr/learn/courses/30/lessons/258711 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제가 길다 간단 하게 설명하자면 그래프들은 1개이상의 정점과 정점들을 연결하는 단방향 간선 으로 이루어져 있다. 위 처럼 도넛 모양 그래프 막대모양 그래프 8자모양 그래프가 여러가지 있다. 그래프들과 무관한 정점을 하나 생성한뒤 그래프들을 임의의정점 하나로 향하는 간선들을 연결하였다. 그후 각 정점에 서로 다른 번호를 매겼다. 생성한 정점의 번호와 정점을 생성하기전 그래프들의 수를 구해야 한다. return [생성한 정점의 번호, 도넛모양..
토마토마토마토 https://www.acmicpc.net/problem/7576 익지 않은 토마토는 근처 토마토를 익게 하는 문제 혼자 익는경우가 없을때모든 토마토가 익을때까지 최소일수 를 구하는 문제 간단하게 BFS 를 써서 푸는 문제다 골드 5인만큼 그냥 시뮬레이션 돌리면 풀린다. #include#include#include#include using namespace std;#define XYZ tuplevector nonfire;const XYZ MoverDirection[4] = { {1,0} ,{-1,0} ,{0,-1} ,{0,1} };vector> vec;int N = 0, H = 0;///토마토 익는칸 확인 함수vector findNextTomato(vector ..
https://www.acmicpc.net/problem/15806 통학이 너무나도 하기 싫었던 영우는 결국 학교의 기숙사에 들어갔다. 통학의 고통에서 해방된 기쁨도 잠시, 학교 기숙사에서는 일정 기간마다 청소 검사를 한다는 사실을 알게 되었다. 청소 검사에서 나쁜 점수를 받으면 벌점을 받게 되고, 벌점이 많이 쌓이면 기숙사에서 퇴사 해야 한다. 영우는 어떤 경우에 벌점을 받는지 궁금하여 기숙사에서 진행하는 청소 검사 시스템에 대해 자세히 조사해 보았다. 기숙사 청소 검사 시스템은 오늘로부터 정확히 t 일이 지나고 검사를 하며, 검사 시간 단축을 위해 방의 특정 부분만 검사한다. 하지만 검사하는 특정 부분 중 한 곳이라도 더럽다면 영우는 벌점을 받게 된다. 영우가 사는 방은 N * N 정사각형 방이며..
부분합은 특정 구간의 합을 효율적으로 계산하기 위해 누적합을 활용하는 방법이다. 입력할때 전부 더해두고 이후에 재사용한다는 계념이다. 그래서 최소 한번이상 사용해야 이득이다. 1차원배열은 index = [1] [2] [3] [4] [5] [6] 이 있다 DP = [1] [3] [6] [10] [15] [21] 배열을 만들어준뒤 배열은 이전값에서 M을 더한 값 [N]= [N-1] + M 3번부터5번값 을 구해야 한다면? 아래처럼 3 부터 5까지 index를 하나씩 올리며 구해도 괜찮다. [1] [2] [3] [4] [5] [6] 1 2 3 4 5 6 ..
유니티에는 단축키를 쉽게 확인하고 단축키를 지정할수 있는 기능이 있다.게임엔진 답게 다른 프로그램보다 확인하기 쉽게 되어있다. 너무 간단한 기능이기에 이런게 있구나 하고 어떤 단축키들이 할당되어있는지 보고 넘어가도 좋다. 한번 보도록 하자. 우선 Shortcuts을 키는 법은 Edit -> Shortcuts.. 에서 확인할수 있다.누르면 창이 하나 켜진다. 아래와 같은 창이 켜지는 것을 확인할수있다.키에 마우스를 올리면 어떠한 단축키가 할당되어있는지 확인할수있다.색마다 다른데유니티에는 단축키를 쉽게 확인하고 단축키를 지정할수 있는 기능이 있다. 게임엔진 답게 다른 프로그램보다 확인하기 쉽게 되어있다. 한번 보도록 하자. 우선 쇼우올컷 을 키는 법은 Edit -> Shortcuts..아래와..
https://school.programmers.co.kr/learn/courses/30/lessons/43164 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr BFS와 DFS 문제 레벨3 단계의 여행경로 문제다. 이해하는 데 확실히 오래 걸린 문제다 처음 생각은 그냥 DFS 문제인 줄 알고 알파벳 정렬 후 빠른 순으로 탐색하였다. 풀면 채점 시 1번 2번 실패, 3번 4번 성공한다. 생각해 낸 아이디어는 위 문구처럼 무조건 다 갈 수 있다는 이야기는 만약 끝까지 탐색 DFS를 했을 경우에도 모든 티켓(간선)을 사용하지 않았다면 그 간선은 마지막에 방문해야..
틀린점이나 이상한점 질문 등이 있을경우 아래 댓글로 알려주시면 감사하겠습니다. 타잔 Tarjan 타잔 알고리즘은 SCC 를 찾는 알고리즘이다. SCC란? (Strong Connection Component) 강결합 컴포넌트 간단하게 서로 연결되어있는 순한 노드끼리 묶어준다고 생각하면 쉽다. 크게 두개의 알고리즘이 있다고 볼수있는데코사라주 알고리즘과 타잔 알고리즘이다. 이번엔 타잔 알고리즘을 설명하려 한다. 맨 아래에는 pc로 접속시(모바일은 사용불가) 코드를 눈으로 보며 생각과 맞는지 확인해볼수 있으니 본문을 읽어본뒤 테스트를 해보자. 알고리즘의 큰틀을 먼저 이해하면 구현자체는 쉽게 할수있다. 타잔알고리즘의 순서는 우선 함수 전 count = 노드번호와 상관없이 노드를 처음탐색했을경우 ..
- Total
- Today
- Yesterday
- 코테
- 프로그래머스
- null
- unity
- 리스트 최적화
- 백준 1306
- 노미노
- Algorithm
- 언리얼엔진으로배우는게임디자인패턴
- 달려라 홍준
- 타잔 알고리즘
- 오블완
- 알고리즘
- 구간끼리 덧셈
- 도넛과 막대그래프
- Cpp
- 토맛토마토
- 유니티
- 지게차와 크레인
- c#
- List 최적화
- 문제
- 색종이 자르기
- 백준
- ??
- 티스토리챌린지
- 영우의 방청소
- 함수
- 토마토맛토
- 내가 자주씀
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |