본문 바로가기
반응형

분류 전체보기701

백준 9466 텀 프로젝트 c++ (dfs) 문제 출처 : https://www.acmicpc.net/problem/9466 9466번: 텀 프로젝트 이번 가을학기에 '문제 해결' 강의를 신청한 학생들은 텀 프로젝트를 수행해야 한다. 프로젝트 팀원 수에는 제한이 없다. 심지어 모든 학생들이 동일한 팀의 팀원인 경우와 같이 한 팀만 있을 www.acmicpc.net 문제 이번 가을학기에 '문제 해결' 강의를 신청한 학생들은 텀 프로젝트를 수행해야 한다. 프로젝트 팀원 수에는 제한이 없다. 심지어 모든 학생들이 동일한 팀의 팀원인 경우와 같이 한 팀만 있을 수도 있다. 프로젝트 팀을 구성하기 위해, 모든 학생들은 프로젝트를 함께하고 싶은 학생을 선택해야 한다. (단, 단 한 명만 선택할 수 있다.) 혼자 하고 싶어하는 학생은 자기 자신을 선택하는 것도.. 2021. 7. 30.
[자료구조] 그래프(Graph)란? Goal 그래프의 기본 개념 이해 그래프의 특징 이해 그래프의 종류 구분 그래프의 표현 방식 이해 1. 그래프(Graph)란? 그래프(G)는 정점(Vertex)들의 집합(V)과 간선(Edge)들의 집합(E)으로 이루어진다. 일반적으로 그래프 G=(V,E)로 표현하고, 여기서 V는 공집합이 아닌 유한 집합이며, E는 두 정점의 쌍으로 구성된 집합이다. // V(G)는 그래프 G의 정점들의 집합, // E(G)는 그래프 G의 간선들의 집합을 의미 V(G) = {선유도, 합정, 광흥창, 밤섬, 여의도, 당산} E(G) = {(선유도,합정),(선유도,당산),(합정,광흥창),(당산,여의도),(광흥창,밤섬),(여의도,밤섬)} 2. 그래프의 종류 1) 무방향 그래프(Undirected Graph) 두 정점 x와 y .. 2021. 7. 29.
백준 11725 트리의 부모 찾기 c++ (dfs) 문제 출처 : https://www.acmicpc.net/problem/11725 11725번: 트리의 부모 찾기 루트 없는 트리가 주어진다. 이때, 트리의 루트를 1이라고 정했을 때, 각 노드의 부모를 구하는 프로그램을 작성하시오. www.acmicpc.net 문제 루트 없는 트리가 주어진다. 이때, 트리의 루트를 1이라고 정했을 때, 각 노드의 부모를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 노드의 개수 N (2 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N-1개의 줄에 트리 상에서 연결된 두 정점이 주어진다. 출력 첫째 줄부터 N-1개의 줄에 각 노드의 부모 노드 번호를 2번 노드부터 순서대로 출력한다. 알고리즘 분류 그래프 이론 그래프 탐색 트리 너비 우선 탐색 깊이 우선 탐색 풀이.. 2021. 7. 29.
백준 1325 효율적인 해킹 c++ (dfs) 문제 출처 : https://www.acmicpc.net/problem/1325 3이다. 따라서 graph[1].push_back(3)을 해준다. 단방향 그래프이기 때문에 반대로 연결은 하지 않는다. ※인접 행렬 그래프보다 인접 리스트 그래프가 메모리 부분에서 효율적이기 때문에 웬만하면 인접 리스트 그래프를 사용 하는 습관을 들이자. 해당 문제에서도 인접 행렬 그래프를 사용하면 메모리 초과가 뜬다고 한다. 그래프를 연결해 주고, 모든 노드를 탐색하여 카운트와 노드 번호를 배열에 저장한다. vector에 저장하고 algorithm헤더의 sort를 커스텀하는 방법도 있지만, 본인은 우선순위큐에 저장하고, 우선순위큐의 sort 방식을 커스텀했다. 이후 가장 높은 카운트(큐의 맨 앞)와 같은 노드 번호들을 오름.. 2021. 7. 29.
백준 7569 토마토 c++ (bfs) 문제 출처 : https://www.acmicpc.net/problem/7569 7569번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N과 쌓아올려지는 상자의 수를 나타내는 H가 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M ≤ 100, 2 ≤ N ≤ 100, www.acmicpc.net 문제 철수의 토마토 농장에서는 토마토를 보관하는 큰 창고를 가지고 있다. 토마토는 아래의 그림과 같이 격자모양 상자의 칸에 하나씩 넣은 다음, 상자들을 수직으로 쌓아 올려서 창고에 보관한다. 창고에 보관되는 토마토들 중에는 잘 익은 것도 있지만, 아직 익지 않은 토마토들도 있을 수 있다. 보관 후 하루가 지나면, 익은 토마토들의 인접한 곳에 있는 익지 않은 토.. 2021. 7. 29.
[코틀린/Kotlin] 기초 #02_문자열( == vs ===) 환경 : Kotlin Version = 1.5.20, JVM, Android Studio 코틀린의 문자열 사용법과, 유용한 기능에 대해 알아보자. 0.참고 자료 https://kotlinlang.org/docs/basic-types.html#strings Basic types | Kotlin kotlinlang.org 1. String 여러 문자를 배열하여 저장할 수 있는 자료형이다. 문자열의 인덱스를 통해 각각의 문자에 접근할 수 있다. Char은 char과 같은 기본형으로 처리되지만 문자열 자료형은기본형에 속하지 않는 배열 형태로 되어있는 특수한 자료형이다. 문자열은 힙 메모리 영역의 String Pool이라고 부르는 공간에 문자열을 저장해두고 이 값을 변수에서 참조한다. String 문자열은 참조 .. 2021. 7. 28.
백준 2636 치즈 c++ (bfs) 문제 출처 : https://www.acmicpc.net/problem/2636 2636번: 치즈 아래 과 같이 정사각형 칸들로 이루어진 사각형 모양의 판이 있고, 그 위에 얇은 치즈(회색으로 표시된 부분)가 놓여 있다. 판의 가장자리(에서 네모 칸에 X친 부분)에는 치즈가 놓 www.acmicpc.net 문제 아래 과 같이 정사각형 칸들로 이루어진 사각형 모양의 판이 있고, 그 위에 얇은 치즈(회색으로 표시된 부분)가 놓여 있다. 판의 가장자리(에서 네모 칸에 X친 부분)에는 치즈가 놓여 있지 않으며 치즈에는 하나 이상의 구멍이 있을 수 있다. 이 치즈를 공기 중에 놓으면 녹게 되는데 공기와 접촉된 칸은 한 시간이 지나면 녹아 없어진다. 치즈의 구멍 속에는 공기가 없지만 구멍을 둘러싼 치즈가 녹아서 구.. 2021. 7. 28.
백준 16234 인구 이동 c++ (bfs) 문제 출처 : https://www.acmicpc.net/problem/16234 16234번: 인구 이동 N×N크기의 땅이 있고, 땅은 1×1개의 칸으로 나누어져 있다. 각각의 땅에는 나라가 하나씩 존재하며, r행 c열에 있는 나라에는 A[r][c]명이 살고 있다. 인접한 나라 사이에는 국경선이 존재한다. 모 www.acmicpc.net 문제 N×N크기의 땅이 있고, 땅은 1×1개의 칸으로 나누어져 있다. 각각의 땅에는 나라가 하나씩 존재하며, r행 c열에 있는 나라에는 A[r][c]명이 살고 있다. 인접한 나라 사이에는 국경선이 존재한다. 모든 나라는 1×1 크기이기 때문에, 모든 국경선은 정사각형 형태이다. 오늘부터 인구 이동이 시작되는 날이다. 인구 이동은 하루 동안 다음과 같이 진행되고, 더 이.. 2021. 7. 28.
[코틀린/Kotlin] 기초 #01_변수와 자료형 0.참고 자료 https://kotlinlang.org/docs/basic-types.html Basic types | Kotlin kotlinlang.org https://www.boostcourse.org/mo132/joinLectures/28611 코틀린 프로그래밍 기본 1 부스트코스 무료 강의 www.boostcourse.org 1.변수 선언 코틀린에서는 값을 변경할 수 있는 가변 변수와, 값을 변경할 수 없는 불변 변수 두 가지 형태의 변수를 선언할 수 있다. val : 불변 변수의 키워드 // java : final , c/c++ const var : 가변 변수의 키워드 ex) val a : Int ex) var b : Int 또한 null이 가능한 자료형과 null이 불가능한 자료형으로 구분.. 2021. 7. 27.
반응형