본문 바로가기

분류 전체보기116

[BOJ] 1967번 1167번 트리의 지름 자바 문제 트리(tree)는 사이클이 없는 무방향 그래프이다. 트리에서는 어떤 두 노드를 선택해도 둘 사이에 경로가 항상 하나만 존재하게 된다. 트리에서 어떤 두 노드를 선택해서 양쪽으로 쫙 당길 때, 가장 길게 늘어나는 경우가 있을 것이다. 이럴 때 트리의 모든 노드들은 이 두 노드를 지름의 끝 점으로 하는 원 안에 들어가게 된다. 이런 두 노드 사이의 경로의 길이를 트리의 지름이라고 한다. 정확히 정의하자면 트리에 존재하는 모든 경로들 중에서 가장 긴 것의 길이를 말한다. 입력으로 루트가 있는 트리를 가중치가 있는 간선들로 줄 때, 트리의 지름을 구해서 출력하는 프로그램을 작성하시오. 아래와 같은 트리가 주어진다면 트리의 지름은 45가 된다. 트리의 노드는 1부터 n까지 번호가 매겨져 있다. 입력 파일의 .. 2022. 7. 10.
[BOJ] 2512번 예산 자바 문제 https://acmicpc.net/problem/2512 2512번: 예산 첫째 줄에는 지방의 수를 의미하는 정수 N이 주어진다. N은 3 이상 10,000 이하이다. 다음 줄에는 각 지방의 예산요청을 표현하는 N개의 정수가 빈칸을 사이에 두고 주어진다. 이 값들은 모두 1 이상 www.acmicpc.net 문제 국가의 역할 중 하나는 여러 지방의 예산요청을 심사하여 국가의 예산을 분배하는 것이다. 국가예산의 총액은 미리 정해져 있어서 모든 예산요청을 배정해 주기는 어려울 수도 있다. 그래서 정해진 총액 이하에서 가능한 한 최대의 총 예산을 다음과 같은 방법으로 배정한다. 모든 요청이 배정될 수 있는 경우에는 요청한 금액을 그대로 배정한다. 모든 요청이 배정될 수 없는 경우에는 특정한 정수 상한액.. 2022. 7. 8.
[BOJ] 1043번 거짓말 자바 문제 https://acmicpc.net/problem/1043 1043번: 거짓말 지민이는 파티에 가서 이야기 하는 것을 좋아한다. 파티에 갈 때마다, 지민이는 지민이가 가장 좋아하는 이야기를 한다. 지민이는 그 이야기를 말할 때, 있는 그대로 진실로 말하거나 엄청나게 www.acmicpc.net 문제 지민이는 파티에 가서 이야기 하는 것을 좋아한다. 파티에 갈 때마다, 지민이는 지민이가 가장 좋아하는 이야기를 한다. 지민이는 그 이야기를 말할 때, 있는 그대로 진실로 말하거나 엄청나게 과장해서 말한다. 당연히 과장해서 이야기하는 것이 훨씬 더 재미있기 때문에, 되도록이면 과장해서 이야기하려고 한다. 하지만, 지민이는 거짓말쟁이로 알려지기는 싫어한다. 문제는 몇몇 사람들은 그 이야기의 진실을 안다는 것.. 2022. 7. 6.
Java CS 지식 정리 1. 객체지향이란? 더보기 클래스라는 틀에서 생겨난 실체를 객체라고 하며, 객체지향 프로그래밍은 객체들 간의 상호작용으로 이루어진다. 객체 지향 모델링은 기능이 아닌 객체가 중심이 되며 각각의 역할을 정의해나가는 것에 초점을 맞춘다. 객체 지향 프로그래밍의 특징 추상화 : 객체들의 공통적인 특징을 도출 캡슐화 : 실제로 구현되는 부분을 외부에 드러나지 않도록 정보 은닉 상속성 : 하나의 클래스가 가진 함수와 데이터를 다른 클래스가 그대로 물려 받아 기존 코드 재활용 다형성 : 오버라이딩(부모클래스-자식클래스), 오버로딩(매개변수 다르게)을 통해 동일 이름의 함수를 다른 방법으로 동작 동적바인딩 : 가상 함수를 호출하는 코드를 컴파일할 때 바인딩을 실행시간에 결정. 프로그램의 유연성 up, 다형 개념 실현.. 2022. 7. 4.