# cycle

DFS로 cycle 판별하기 (유향, 무향 그래프)
1) 유향 그래프(directed) 기존의 dfs 코드에 finished 리스트를 추가한다. 만약, 이미 방문한 노드를 재방문하였을 때, 해당 노드의 dfs 호출이 끝나지 않았다면 사이클이 존재한다고 판단할 수 있다. 다양한 그래프를 직접 그려보면 이해하기 쉽다. 자식 노드가 한 개 뿐인 직선형 트리 기본 트리 형태 사이클이 있는 경우 
[Algorithm - Baekjoon] 16947번 서울 지하철 2호선
문제 서울 지하철 2호선은 다음과 같이 생겼다. 지하철 2호선에는 51개의 역이 있고, 역과 역 사이를 연결하는 구간이 51개 있다. 즉, 정점이 51개이고, 양방향 간선이 51개인 그래프로 나타낼 수 있다. 2호선은 순환선 1개와 2개의 지선으로 이루어져 있다. 한 역에서 출발해서 계속 가면 다시 출발한 역으로 돌아올 수 있는 노선을 순환선이라고 한다. 지선은 순환선에 속하는 한 역에서 시작하는 트리 형태의 노선이다. 두 역(정점) 사이의 거리는 지나야 하는 구간(간선)의 개수이다. 역 A와 순환선 사이의 거리는 A와 순환선에 속하는 역 사이의 거리 중 최솟값이다. 지하철 2호선과 같은 형태의 노선도가 주어졌을 때, 각 역과 순환선 사이의 거리를 구해보자. 입력 첫째 줄에 역의 개수 N(3 ≤

[Algorithm - Baekjoon] 16929번 Two Dots
문제 Two Dots는 Playdots, Inc.에서 만든 게임이다. 게임의 기초 단계는 크기가 N×M인 게임판 위에서 진행된다. 각각의 칸은 색이 칠해진 공이 하나씩 있다. 이 게임의 핵심은 같은 색으로 이루어진 사이클을 찾는 것이다. 다음은 위의 게임판에서 만들 수 있는 사이클의 예시이다. 점 k개 d1, d2, ..., dk로 이루어진 사이클의 정의는 아래와 같다. 모든 k개의 점은 서로 다르다. k는 4보다 크거나 같다. 모든 점의 색은 같다. 모든 1 ≤ i ≤ k-1에 대해서, di와 di+1은 인접하다. 또, dk와 d

230712 Oracle SQL 13 [view, Sequence, index]
[7월 12일 점심시간 문제] 부서번호, 부서번호별 평균월급을 출력하는 view를 생성하세요. view 이름은 dept_avg 로 생성하세요. ✅ 뷰 만드는 문법 다음 select 절에 그룹함수를 쓸 때는 컬럼별칭을 함께 써줘야한다!! 복습(VIEW) view 를 사용하는 이유? 보안상의 이유 (민감한 데이터를 노출하지 않기위해) 복잡한 쿼리문을 단순하게 쿼리하기 위해서 view 의 옵션 2가지 with read only : DML 작업이 아예 안되게 막는 옵션 with check option : 특정 조건의 행에 데이터를 갱신하지 못하게 막는 옵션 ※ view 는 데이터를 저장하지 않고 그냥 테이블을 바라보는 쿼리문이다. 근데 view 에서 바꾸면 기본 테이블에서도 바뀐다. SQLD 기출 문제 문제. (단답형) 다른 테이블에서 파생된 테이블로, 물리적 데이터가 저장되는 것이 아닌 논리적으로 존재하는것을 무엇

트리 (Tree)
트리 (Tree) 란? 트리 Tree는 데이터 구조 중 하나로, 으로 구성된 노드들의 집합을 나타낸다. 트리는 하나의 루트 노드(root node)에서 시작해서 여러 개의 자식 노드(child node)를 가지며, 자식 노드들도 각각 다시 자신의 자식 노드들을 가질 수 있다. 트리는 데이터를 으로 구성하고 관리하는 데 매우 유용한 자료구조이다. 예를 들어, 조직도, 가계도 및 파일 시스템에서 폴더 구조(디렉터리)와 를 나타내는 데 사용되고, 알고리즘에서도 널리 활용되는데 대표적인 예로는 이 있다. 트리 용어 노드(node) : 트리 구조의 자료 값을 담고 있는 단위 루트(root) : 트리의 맨 위에 있는 노드 리프(leaf) : 자식 노드가 없는 노드 인터널(internal) : 리프 노드를 제외한 모든 노드 엣지(edge) : 노드 간의 연결선 (=link, branch) 부모(parent) : 자식 노드를 가지는 노드 자식(c
[Flutter] Lifecycle(앱 상태) 이벤트 5편
Lifecycle(앱 상태) 이벤트 5편 Lifecycle(앱 상태) 이벤트 1편 Lifecycle(앱 상태) 이벤트 2편 Lifecycle(앱 상태) 이벤트 3편 Lifecycle(앱 상태) 이벤트 4편 JSONPlaceholder provider | Flutter Package [share
[Flutter] Lifecycle(앱 상태) 이벤트 4편
Lifecycle(앱 상태) 이벤트 4편 Lifecycle(앱 상태) 이벤트 1편 Lifecycle(앱 상태) 이벤트 2편 Lifecycle(앱 상태) 이벤트 3편 Lifecycle(앱 상태) 이벤트 5편 JSONPlaceholder provider | Flutter Package [shared_preferen

0221 TIL
파이썬 다이아몬드 문제 다중 상속(multiple inheritance)에서 다이아몬드 문제란? 같은 클래스를 상속받은 클래스 두 개를 모두 상속받는 클래스가 있을 때 이 자식 클래스가 2개의 부모 클래스 안의 중복되는 메소드에 대해 어떻게 상속을 처리할 것인지 모호해지는 것을 다이아몬드 문제라고 합니다. 이런 문제로 JAVA, 루비 등에서는 다중 상속을 지원하지 않습니다. 파이썬, C++, 스칼라 등에서는 다중 상속을 지원하는데 파이썬에서는 다이아몬드 문제를 해결하기 위해서 MRO 라는 것을 도입했습니다. MRO는 C3선형화 알고리즘을 통해서 상속받는 메소드의 순서를 결정합니다. 클래스의 \mro를 확인하면 순서를 확인할 수 있습니다. 파이썬은 교차상속은 지원하지 않아* 다중상속을 할 때는 상속받는 클래스의 순서에 유의해야합니다. https://xo.dev/python-method-resolution-order/ 복사 얕은
[Flutter] Lifecycle(앱 상태) 이벤트 3편
Lifecycle(앱 상태) 이벤트 3편 Lifecycle(앱 상태) 이벤트 1편 Lifecycle(앱 상태) 이벤트 2편 Lifecycle(앱 상태) 이벤트 4편 Lifecycle(앱 상태) 이벤트 5편 get | Flutter Package [sharedpreferences | Flutter Package](https://pub.dev/packages/sharedpref
[Flutter] Lifecycle(앱 상태) 이벤트 2편
Lifecycle(앱 상태) 이벤트 2편 Lifecycle(앱 상태) 이벤트 1편 Lifecycle(앱 상태) 이벤트 3편 Lifecycle(앱 상태) 이벤트 4편 Lifecycle(앱 상태) 이벤트 5편 shared_preferences | Flutter Package App Life Cycle에 대하여 정리해 놓은 인트로 참고하세요 ! [Ap
[Flutter] Lifecycle(앱 상태) 이벤트 1편
Lifecycle(앱 상태) 이벤트 1편 Lifecycle(앱 상태) 이벤트 2편 Lifecycle(앱 상태) 이벤트 3편 Lifecycle(앱 상태) 이벤트 4편 Lifecycle(앱 상태) 이벤트 5편 Intro Flutter로 앱을 개발하다 보면 앱의 상태에 대한 체크가 필요한 시점이 있다. 앱의 상태는 단순히 보면 실행 중, 백그라운드, 앱 종료 이렇게 나눌 수 있는데, Flutter에서는 4가지의 상태로 분류하여
[백준 9466번] 텀 프로젝트
https://www.acmicpc.net/problem/9466 1. 메모리 초과 코드 2. 정답 코드 2. 후기 dfs(d[key], cycle + [d[key]]) 이 부분이 메모리 초과의 원인이다. +를 통해 생성된 새로운 사이클은 새로운 id를 할당받는다. 반면에 append()를 사용할 경우 동일한 id를 사용하기 때문에 새로운 메모리 공간이 필요없다. 아래 블로그에서 도움을 받았다. https://claude-u.tistory.com/435
[프로그래머스] 혼자 놀기의 달인
https://school.programmers.co.kr/learn/courses/30/lessons/131130 1. 코드 2. 후기 [백준 2668번] 숫자 고르기 문제와 매우 유사하다.
[백준 2668번] 숫자 고르기
https://www.acmicpc.net/problem/2668 --- 1. DFS return값 활용 풀이 2. DFS 외부 리스트에 값 추가 풀이 시작한 KEY값으로 다시 돌아오는 싸이클을 가질 경우, visited에 속하는 모든 KEY값들을 답에 추가한다. 3. visited 코드 텀 프로젝트 문제와 동일한 풀이 방식이다. 주어진 N이 만만하다면 직관적인 2번째 풀이 코드를 사용해도 되지만, 텀 프로젝트 문제처럼 N이 큰 값으로 주어진다면 이 풀이를 사용하자. 싸이클 문제의 경우 key값으로 나타내지는 노드들은 단 한번만 방문하면 싸이클 여부를 판단할 수 있다.
정보처리기사 문제(전자계산기 구조) 2015년 2회 A
중앙처리장치는 4가지 단계를 반복적으로 거치면서 동작을 수행하게 되는데 이에 속하지 않는 것은? ① Fetch Cycle - 명령어 인출 ② Execute Cycle - 명령어 실행 ③ Indirect Cycle - 간접 ④ Branch Cycle 정답:4번. 설명: CPU 명령어 싸이클 (Machine Cycle, Instruction Cycle) ※ (하나의 명령어를 실행하는데 필요한 전체 과정) 2단계 구조 : 명령어 인출(fetch) -> 명령어 실행(execute) 3단계 구조 : 명령어 인출 -> 명령어 해석(decode) -> 명령어 실행 4단계 구조 : 명령어 인출 -> 간접(indirect) -> 명령어 실행 -> 인터럽트(interrupt) 싸이클
하루일지 - 22.02.22
신문 "러시아군 우크라에 이미 진입…국민들은 피란길"...EU, 긴급 회의 소집 "전쟁불사, 지금까지 이런 대규모 군 대치는 없었다"…신냉전 최전선 된 우크라 > 무섭다.. 진짜 역사 책에서만 보던 거를 볼 거라고 감히 누가 상상했겠나. 당연히 그냥 지나가는 또 하나의 갈등일 줄 알았다. 만약 더 진지하게 이 전쟁이 이뤄진다면 피해는 얼마나.. 발생하고 이득은 누가 볼까 암튼 요 근래 동안 주식, 암호화폐등의 변동성이 클 것은 당연시하고 있어야 겠다. 이 뿐만 아니라 원유, 곡물 등의 가격도 오르는 것을 보면 참.. 영향력이 크다. 족히 이 사태가 끝나길 바란다. [내달 주총 앞두고 자사주 5000주 매입한 삼성전자 사장…왜?](https://www.mk.co.k

[leetcode] Linked List Cycle
Problem what to ask? Is it a node? Is it a array? what is pos? Is it a index where Node start repeating? Extreme case? head = null? constraints? where does this come from? Code sol 1 - using an address of a node time O(N) space O(N) sol 2 - two pointer solution slow moves 1 step each fast mov

[BOJ] 텀 프로젝트 (no.9466)
문제 이번 가을학기에 '문제 해결' 강의를 신청한 학생들은 텀 프로젝트를 수행해야 한다. 프로젝트 팀원 수에는 제한이 없다. 심지어 모든 학생들이 동일한 팀의 팀원인 경우와 같이 한 팀만 있을 수도 있다. 프로젝트 팀을 구성하기 위해, 모든 학생들은 프로젝트를 함께하고 싶은 학생을 선택해야 한다. (단, 단 한 명만 선택할 수 있다.) 혼자 하고 싶어하는 학생은 자기 자신을 선택하는 것도 가능하다. 학생들이(s1, s2, ..., sr)이라 할 때, r=1이고 s1이 s1을 선택하는 경우나, s1이 s2를 선택하고, s2가 s3를 선택하고,..., sr-1이 sr을 선택하고, sr이 s1을 선택하는 경우에만 한 팀이 될 수 있다. 예를 들어, 한 반에 7명의 학생이 있다고 하자. 학생들을 1번부터 7번으로 표현할 때, 선택의 결과는 다음과 같다. 1 2 3 4 5 6 7 3 1 3 7 3 4 6 위의 결과를 통해 (3)과 (4, 7, 6)이 팀을 이룰 수 있다. 1, 2

[백준]#16947 서울 지하철 2호선
문제 서울 지하철 2호선은 다음과 같이 생겼다. 지하철 2호선에는 51개의 역이 있고, 역과 역 사이를 연결하는 구간이 51개 있다. 즉, 정점이 51개이고, 양방향 간선이 51개인 그래프로 나타낼 수 있다. 2호선은 순환선 1개와 2개의 지선으로 이루어져 있다. 한 역에서 출발해서 계속 가면 다시 출발한 역으로 돌아올 수 있는 노선을 순환선이라고 한다. 지선은 순환선에 속하는 한 역에서 시작하는 트리 형태의 노선이다. 두 역(정점) 사이의 거리는 지나야 하는 구간(간선)의 개수이다. 역 A와 순환선 사이의