BOJ 2292ハニカム
質問する
BOJ 2292ハニカム
青銅II|白準2292|Python 3断面図
アルゴリズム#アルゴリズム#
絵は少し乱れていますが、想像以上に色が付きやすいです.
色を塗った六角形のグループを皮と言います.オレンジ色は1皮黄色は2皮...はい.
赤い矢印は、次のシェルの境界にまたがる2つの格子です.
1を除いて、最初のケースから白いケースを見ると
...
上記のルールを見つけることができます.
...
数が次のシェルより小さい場合は、そのシェルに属するため、シェル番号が出力されます.
コード#コード#
import sys
input = sys.stdin.readline
N = int(input())
# N == 1인 경우 예외
if N == 1:
print(1)
exit(0)
c = 1 # 껍질 번째
n = 2 # 껍질의 시작값
while True:
n = (n + (6 * c)) # 다음 껍질 범위 계산
# 다음 껍질보다 작으면 출력
if N < n:
print(c + 1)
exit(0)
# 껍질 +1
c += 1
結果
Reference
この問題について(BOJ 2292ハニカム), 我々は、より多くの情報をここで見つけました https://velog.io/@leehe228/boj2292テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol