[白俊2292]ハニカム
🔴 質問する
🟢 に答える
1号室を中心に、2号室から7号室までが2号室、8号室から19号室までが3号室の場合、N号室に着いたときに通る部屋の数は、N号室がある部屋の部屋のケース番号と同じです.
シェルの番号を調べるために、シェルの最後の部屋の番号を見るとルールが見えます.
1号ケースの1号
シェル2号の7号
3番ケースの19番
4番ケースの37番
5番ケースの61番
.
.
.
このように、ハウジング番号がnの場合、次のハウジングの最後の部屋の番号がn*6であることがわかり、1つ増えるごとに!
説明は少し長いですが、コードは短いです.
import sys
N = int(sys.stdin.readline())
end = 1 # 마지막 방의 번호
step = 1 # 껍질의 번호
while True:
if N <= end:
print(step)
break
end += step*6
step += 1
Reference
この問題について([白俊2292]ハニカム), 我々は、より多くの情報をここで見つけました https://velog.io/@wkkyu08/백준2292-벌집テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol