[Programmers] 섬 연결하기
https://programmers.co.kr/learn/courses/30/lessons/42861 코딩테스트 연습 - 섬 연결하기 4 [[0,1,1],[0,2,2],[1,2,5],[1,3,1],[2,3,8]] 4 programmers.co.kr 파이썬을 사용했습니다. 문제를 풀때 가장 중요한 부분이 사이클이 없고 분리된 섬 없이 모든 섬이 연결되는 것입니다. 문제를 푼 방법은 먼저 다리를 연결하는 값을 오름차순으로 정렬한 뒤 한번 연결된 섬을을 미리 정의한 그룹에 넣는 것입니다. 또한 연결하려는 양 끝 섬이 이미 정의한 그룹안에 있다면 다리를 건설 하는 것을 포기합니다. 알고리즘은 Kruskal 알고리즘으로 분류됩니다. https://ko.wikipedia.org/wiki/%ED%81%AC%EB%9F..
2020. 11. 26.
[Java Study] 2일차 타입(프리미티브 타입) 변수
학습내용 프리미티브 타입 종류와 값의 범위 그리고 기본 값 프리미티브 타입과 레퍼런스 타입 리터럴 변수 선언 및 초기화하는 방법 변수의 스코프와 라이프타임 타입 변환, 캐스팅 그리고 타입 프로모션 1차 및 2차 배열 선언하기 타입 추론, var 프리미티브 타입 종류와 값의 범위 그리고 기본 값 프리미티브 타입(기본형 타입)은 8개 타입이 있습니다. (boolean, byte, short, int, long, float, double, char) 타입은 논리형, 정수형, 실수형, 문자형의 4가지 카테고리로 나눌수 있습니다. 타입 메모리 크기 기본 값 데이터 범위 논리형 boolean 1 byte false true,false 정수형 byte 1 byte 0 -128 ~ 127 short 2 byte 0 -..
2020. 11. 21.
[Programmers] 숫자 게임
[Summer/Winter Coding(~2018)] 숫자 게임 파이썬을 사용하였습니다. 주어진 두개의 리스트를 오름차순으로 정렬하고 A를 이길수 있는 B의 최소 숫자가 발견되면 패스 하는 방법으로 작성하였습니다. 예를들면 A = [1,3,5,7] B = [2,2,6,8] 을 가지고 있는데 (A,B)일때 (1,2), (3,2), (5,6), (7,8) 일때 가장 많이 이길 수 있습니다. 즉 가장 비슷한 숫자를 가지고 이겼을 때 다른 숫자를 이길 수 있을 가능성이 더 높아진다는 것입니다. 정답 코드 (코드는 간단하게 작성하였기 때문에 찬찬히 읽어보시기 바랍니다.) def solution(A, B): answer = 0 A = sorted(A) B = sorted(B) for i in A: for i2 in..
2020. 11. 20.