Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
Tags
- Union-Find
- MONAT_F4
- 날짜 계산 함수
- NEW-PAGE PRINT ON
- qfieldname
- transporting
- ABAP
- ZPL
- FOR ALL ENTRIES IN
- CTS #CTS 이관 #SAP #ABAP
- Dictionary Search Help
- DP - 무한배낭(순서)
- batch job
- cfieldname
- BOJ_Gold
- READ TABLE
- 필드카탈로그
- DP - 유한배낭
- ALV Output Setting
- Data Browser
- APPENDING
- SAP
- DP - 무한배낭
- boole_d
- APPENDING CORRESPONDING
- using value
- changing value
- SM36
- SAP GUI
- java
Archives
- Today
- Total
Jin's Library
[Gold Ⅴ] 1011 - Fly me to the Alpha Centauri 본문
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class BOJ_1011 {
public static void main(String[] args) throws Exception{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
int N = Integer.parseInt(br.readLine());
for(int i=0;i<N;i++){
StringTokenizer st = new StringTokenizer(br.readLine());
int StartPoint = Integer.parseInt(st.nextToken());
int EndPoint = Integer.parseInt(st.nextToken());
int distance = EndPoint - StartPoint;
int speed = (int)Math.sqrt(distance);
if (speed * speed == distance) {
sb.append(2 * speed - 1).append("\n");
} else if (distance <= speed * speed + speed) {
sb.append(2 * speed).append("\n");
} else {
sb.append(2 * speed + 1).append("\n");
}
}
System.out.println(sb);
}
}
// #1 시간초과
// public class BOJ_1011 {
// public static void main(String[] args) throws Exception{
// BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
// StringBuilder sb = new StringBuilder();
// int N = Integer.parseInt(br.readLine());
// for(int i=0;i<N;i++){
// StringTokenizer st = new StringTokenizer(br.readLine());
// int StartPoint = Integer.parseInt(st.nextToken());
// int EndPoint = Integer.parseInt(st.nextToken());
// int speed = 1;
// int warpCount = 1;
// StartPoint++;
// while(StartPoint != EndPoint){
// int acc = 0;
// int distance = EndPoint - StartPoint;
// warpCount++;
// for(int j=1;j<=speed;j++) acc += j;
// if(distance >= acc){
// acc += speed+1;
// if(distance >= acc){ // 가속
// StartPoint += ++speed;
// }else{ // 등속
// StartPoint += speed;
// }
// }else{ // 감속
// StartPoint += --speed;
// }
// }
// sb.append(warpCount).append("\n");
// }
// System.out.println(sb);
// }
// }
//
// 01 : 1
// 02 : 1 1
// 03 : 1 1 1
// 04 : 1 2 1
// 05 : 1 2 1 1
// 06 : 1 2 2 1
// 07 : 1 2 2 1 1
// 08 : 1 2 2 2 1
// 09 : 1 2 3 2 1
// 10 : 1 2 3 2 1 1
// 11 : 1 2 3 2 2 1
// 12 : 1 2 3 3 2 1
// 13 : 1 2 3 3 2 1 1
// 14 : 1 2 3 3 2 2 1
// 15 : 1 2 3 3 3 2 1
// 16 : 1 2 3 4 3 2 1
// 17 : 1 2 3 4 3 2 1 1'Algorithm - Java > BOJ - Gold' 카테고리의 다른 글
| [Gold Ⅳ] 9935 - 문자열 폭발 (0) | 2025.09.29 |
|---|---|
| [Gold Ⅴ] 7576 - 토마토 (0) | 2025.09.29 |
| [Gold Ⅴ] 7569 - 토마토 (0) | 2025.09.29 |
| [Gold Ⅴ] 5430 - AC (0) | 2025.09.29 |
| [Gold Ⅳ] 5427 - 불 (0) | 2025.09.29 |