쾌락없는 책임 (공부)
-
1647 백준 - 도시 분할 계획, C++, 크루스칼 알고리즘쾌락없는 책임 (공부)/알고리즘 문제풀이 2021. 9. 17. 18:23
1647번: 도시 분할 계획 첫째 줄에 집의 개수 N, 길의 개수 M이 주어진다. N은 2이상 100,000이하인 정수이고, M은 1이상 1,000,000이하인 정수이다. 그 다음 줄부터 M줄에 걸쳐 길의 정보가 A B C 세 개의 정수로 주어지는데 A번 www.acmicpc.net #include #include #include using namespace std; int n, m, ans; int parent[100001]; vector edge; int FindParent(int x){ if(x == parent[x]) return x; else return parent[x] = FindParent(parent[x]); } bool IsSameParent(int x, int y){ x = FindP..
-
11003 백준 최솟값 찾기 - C++, 덱쾌락없는 책임 (공부)/알고리즘 문제풀이 2021. 9. 16. 22:59
11003번: 최솟값 찾기 N개의 수 A1, A2, ..., AN과 L이 주어진다. Di = Ai-L+1 ~ Ai 중의 최솟값이라고 할 때, D에 저장된 수를 출력하는 프로그램을 작성하시오. 이때, i ≤ 0 인 Ai는 무시하고 D를 구해야 한다. www.acmicpc.net #include #include using namespace std; int numbers[5000001]; int n, l; int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); cin >> n >> l; for(int i = 0; i > numbers[i]; deque list; for(int i = 0; i < n; i++){ if(!..
-
1823 백준 수확 - C++, DP쾌락없는 책임 (공부)/알고리즘 문제풀이 2021. 9. 16. 18:18
1823번: 수확 첫째 줄에 벼의 개수 N(1 ≤ N ≤ 2,000)이 주어지고 두 번째 줄부터 N+1번쨰 줄까지 벼의 가치 v(i) (1 ≤ v(i) ≤ 1,000) 가 주어진다. www.acmicpc.net #include #include using namespace std; int n, res; int rice[2001]; int dp[2001][2001]; int DP(int left, int right, int count){ if(left > right) return 0; if(dp[left][right]) return dp[left][right]; return dp[left][right] = max(DP(left+1, right, count+1) + rice[left] * count, DP(l..
-
유니티 Stopwatch로 시간 측정하기쾌락없는 책임 (공부)/Unity 2021. 9. 14. 21:40
using System.Diagnostics; void SaveGame() { Stopwatch sw = new Stopwatch(); sw.Start(); // Something doing... sw.Stop(); UnityEngine.Debug.Log("Saving Time is " + sw.ElapsedMilliseconds.ToString() + " ms"); } 잠시 메모용 Debug.Log에 오류가 나오게 되므로 앞에 UnityEngine을 붙여줘야 한다
-
유니티 드래그앤 드롭, UI / 오브젝트 드래그앤 드롭쾌락없는 책임 (공부)/Unity 2021. 9. 8. 21:47
해당 프로젝트 깃허브 GitHub - JangHanjun/UnityPractice: 각종 유니티 기능들 실험하는 곳 각종 유니티 기능들 실험하는 곳. Contribute to JangHanjun/UnityPractice development by creating an account on GitHub. github.com UI 드래그 앤 드롭 using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.EventSystems; public class DragAndDrop : MonoBehaviour, IPointerDownHandler, IBeginDragHandler, IEndDragHandl..
-
최장 증가 부분 수열 - Longest Increasing Subsequence 알고리즘쾌락없는 책임 (공부)/알고리즘 공부 2021. 8. 23. 22:15
최장 증가 부분 수열 이 알고리즘을 접하게 된건 백준의 11053번으로 백준 내에서도 시리즈로 있을 정도로 유명한 알고리즘입니다. 영어로 LIS라고 줄여 말하기도 하는 이 알고리즘은 주어진 수열에서 수가 계속 증가하는 부분수열의 최대를 구하는 알고리즘으로 주의해야 할 점은 부분수열이니 순서를 지켜야 한다는 것입니다. 단순 정렬이라면 이렇게 따로 알고리즘이 나올 이유는 없겠죠. 다이나믹 프로그래밍으로 풀이하는 LIS ( 시간복잡도 O(N^2) ) cin >> n; for(int i = 0; i > arr[i]; for(int i = 0; i arr[j]){ ans..
-
백준 12738 가장 긴 증가하는 부분수열 3 - C++, LIS쾌락없는 책임 (공부)/알고리즘 문제풀이 2021. 8. 23. 21:32
12015번: 가장 긴 증가하는 부분 수열 2 첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 수열 A를 이루고 있는 Ai가 주어진다. (1 ≤ Ai ≤ 1,000,000) www.acmicpc.net #include #include #include using namespace std; int n, input; int main(){ scanf("%d", &n); vector num; for(int i = 0; i < n; i++){ scanf("%d", &input); if(num.empty() || num.back() < input) num.push_back(input); else { auto temp = lower_bound(num.begin(), num.e..
-
백준 20040 사이클 게임 - C++, Disjoint Set쾌락없는 책임 (공부)/알고리즘 문제풀이 2021. 8. 19. 13:19
20040번: 사이클 게임 사이클 게임은 두 명의 플레이어가 차례대로 돌아가며 진행하는 게임으로, 선 플레이어가 홀수 번째 차례를, 후 플레이어가 짝수 번째 차례를 진행한다. 게임 시작 시 0 부터 n − 1 까지 고유한 www.acmicpc.net #include using namespace std; int parent[500001]; int n, m; int FindParent(int x){ if(x == parent[x]) return x; else return parent[x] = FindParent(parent[x]); } void Merge(int x, int y){ x = FindParent(x); y = FindParent(y); if(x == y) return; parent[x] = y;..