본문 바로가기

[JAVA 스터디] 250113 Math.random - 랜덤으로 난수 생성하기 - 오늘의 학습 키워드-> 자바로 난수생성   - 공부한 내용 본인의 언어로 정리하기 1. Math.random 개념 개념자바에서 난수를 만드는 방법은 2가지가 있습니다.Random 클래스 사용Math.random() 차이점1. Random 클래스는 int, long, float, double, boolean type의 난수를 얻을 수 있지만 Math.random()은 0.0에서 1사이의 난수를 얻습니다.2. Random 클래스는 seed를 설정 할 수 있지만 Math.random()은 현재시간으로 seed가 고정되어있습니다. - seed란 난수를 만드는 알고리즘에 사용되는 값으로 seed가 같으면 같은 난수를 생성합니다.  1. Random 클래스 사용import java.util.Random; 이 문.. 더보기
[백준_JAVA] 20056번 마법사 상어와 파이어볼 마법사 상어와 파이어볼시간 제한메모리 제한제출정답맞힌 사람정답 비율1 초512 MB241119803605736.906%문제어른 상어가 마법사가 되었고, 파이어볼을 배웠다.마법사 상어가 크기가 N×N인 격자에 파이어볼 M개를 발사했다. 가장 처음에 파이어볼은 각자 위치에서 이동을 대기하고 있다. i번 파이어볼의 위치는 (ri, ci), 질량은 mi이고, 방향은 di, 속력은 si이다. 위치 (r, c)는 r행 c열을 의미한다.격자의 행과 열은 1번부터 N번까지 번호가 매겨져 있고, 1번 행은 N번과 연결되어 있고, 1번 열은 N번 열과 연결되어 있다.파이어볼의 방향은 어떤 칸과 인접한 8개의 칸의 방향을 의미하며, 정수로는 다음과 같다.7016 2543마법사 상어가 모든 파이어볼에게 이동을 명령하면 다음이.. 더보기
[java 스터디 1주차] java 힙(heap)과 다익스트라 알고리즘 개념 힙(Heap)힙은 완전 이진트리 형태로 최대, 최솟값을 빠르게 찾아내는데 유용한 자료구조이다.힙은 중복값을 허용한다.부모-자식 간 (레벨 별) 정렬은 보장하고, 형제간의 정렬은 보장하지 않아서 반 정렬 상태라고 볼 수 있다.힙은 최소 힙(Min Heap), 최대힙(Max Heap) 두가지가 있다.최소 힙은 루트노드가 최솟값이 되고, 부모노드의 key는 자식노드의 key보다 작아야 한다는 규칙이 있다.최대 힙은 루트노드가 최댓값이 되고, 부모노드의 key가 자식 노드의 key보다 커야 한다는 규칙이 있다.  최소 힙(Min Heap)최소 힙(Min Heap)은 부모 노드의 key가 자식 노드의 key보다 작거나 같은 완전 이진트리이다.다른 규칙은 없다. 단지 부모노드가 자식 노드의 key보다 작기만 하면 .. 더보기