728x90
문제 링크: https://www.acmicpc.net/problem/1011
1011번: Fly me to the Alpha Centauri
우현이는 어린 시절, 지구 외의 다른 행성에서도 인류들이 살아갈 수 있는 미래가 오리라 믿었다. 그리고 그가 지구라는 세상에 발을 내려 놓은 지 23년이 지난 지금, 세계 최연소 ASNA 우주 비행
www.acmicpc.net
연습장에 최소 2장이상은 써가면서 규칙을 찾아야 문제를 풀 수있을거라 말한다......😣
❌ 1차시도 실패
마지막에 1로 끝내려면 서서히 거리를 줄여나가는 걸 생각못하고
그냥 마지막에 1만 넣어놓고 거리를 늘려가다가 빡1로 끝내는 이상한 식을 세워버렸다..
나처럼 실수하질 않기 바라며....!
❓ 정답은 ??
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
t=int(input())
for _ in range(t):
x,y=map(int,input().split())
거리=y-x
n=1
while True:
if 거리>n*(n+1):
n+=1
else: #거리<=n*(n+1)
#거리는 n그룹에 있음
if 거리<=(n**2): #->n그룹의 상단
print(n*2-1)
break
else: #거리>(n**2) ->n그룹의 하단
print(n*2)
break
|
cs |
💯 풀이 과정
무지성으로 1~12까지만 써봤는데.... 하...짜증나 이럴 게 아니다.
최소 20까지는 써봐야 규칙이 보인다.. ㅋㅋㅋㅋ
| 거리 길이 (y-x) |
이동 경로 | 이동횟수 | 갯수 | 설명 |
| 1 | 1 | 1 | 1 | 1그룹 끝점 2*1개 1과 2 구분점 1**1 |
| 2 | 11 | 2 | 1 | |
| 3 | 111 | 3 | 2 | 2그룹 끝점 2*3개 3과 4 구분점 2**2 |
| 4 | 121 | 3 | ||
| 5 | 1211 | 4 | 2 | |
| 6 | 1221 | 4 | ||
| 7 | 12211 | 5 | 3 | 3그룹 끝점 3*4개 5와 6 구분점 3**2 |
| 8 | 12221 | 5 | ||
| 9 | 12321 | 5 | ||
| 10 | 123211 | 6 | 3 | |
| 11 | 123221 | 6 | ||
| 12 | 123321 | 6 | ||
| 13 | 1233211 | 7 | 4 | 4그룹 끝점 4*5개 7과 8 구분점 4**2 |
| 14 | 1233221 | 7 | ||
| 15 | 1233321 | 7 | ||
| 16 | 1234321 | 7 | ||
| 17 | 12343211 | 8 | 4 | |
| 18 | 12343221 | 8 | ||
| 19 | 12343321 | 8 | ||
| 20 | 12344321 | 8 |
즉!!!
1) 일단 어느 그룹에 속하는지 찾고
2) 그룹에 상단인지 하단인지 확인하는 방법을 사용한다.
😎오늘의 한줄평: 너무 복잡복잡쓰..... 12까지 밖에 안써보고 포기했다가.... 다시 써봤는데 이런 규칙이..
728x90
'😁 빅데이터 문제 풀기 & Study > - BAEKJOON 문제' 카테고리의 다른 글
| [2805] 나무자르기 / 파이썬 (오랜만에 이진탐색) (0) | 2021.11.19 |
|---|---|
| [10989] 직각삼각형 / 파이썬 (피타고라스 정리 사용) (0) | 2021.11.19 |
| [2775번] 부녀회장이 될테야 / python3 (방법 2가지) (0) | 2021.11.17 |
| [5622번] 다이얼 / python3 (0) | 2021.11.15 |
| [9012번] 괄호 / python3 (다시도전하기. 서방님&새색시 방법) (0) | 2021.11.15 |