상상하라 그리고 현실로 만들어라.

상상하는 모든 것이 미래다.

반응형

알고리즘 문제풀이 2

[백준] 수 찾기, 이진 탐색(Binary Search) 알고리즘

이분 탐색(Binary Search) 이진 탐색(Binary Search) 은 '정렬된 데이터'를 절반씩 나누어 탐색하는 방법입니다. 그래서 속도적인 측면에서 매우 빠른 시간내에 원하는 데이터를 찾을 수 있는 방법이죠. 기초가 되는 탐색 방법으로서 코딩 테스트에서도 제법 출제되는 유형입니다. 배열 A에서 데이터 5를 찾는다고 가정해봅시다. 이때 이진 탐색(Binary Search)으로 찾는다면, 단 2번의 순회로 배열 A 에 데이터 5가 있는지 없는지 확인할 수 있습니다. 핵심 이진 탐색(Binary Search)은 반드시 정렬된 데이터일 때 사용할 수 있는 탐색법입니다. 따라서 배열 순회 전에 오름차순으로 데이터를 정렬해야 합니다. 물론 내림차순으로 해도 상관없지만 반대로 생각해야겠지요? 두 번째로 이..

[백준] 사칙연산 문제 A / B 풀기, 그리고 실수

안녕하세요, 반갑습니다! 간단한 사칙연산 문제입니다. 문제 두 정수 A와 B를 입력받은 다음, A/B를 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 A와 B가 주어진다. (0 < A, B < 10) 출력 첫째 줄에 A/B를 출력한다. 실제 정답과 출력값의 절대오차 또는 상대오차가 10-9이하이면 정답이다. 예제 1 입력 : 1 3//출력 : 0.33333333333333333333333333333333 예제2 입력 : 4 5//출력 : 0.8 정말 쉬운 문제죠? 그런데, 첫 시도에 틀렸습니다! 아니 왜??? 하고 잠시 고민했었지만, 곧 이유를 알 수 있었습니다. 먼저 틀린 제 풀이를 보시죠. fun main() { //한 줄로 들어오는 값을 공백으로 구분, 배열로 저장된다 val input = rea..

반응형