エルフたちは秘密のタイムスタンプを持っています。これは、サンタクロースがそり🛷で世界中にプレゼントを配りに出発する正確な日時です。ですが北極では、時刻を保存するためにとても変わったフォーマットを使っています:YYYY*MM*DD@HH|mm|ss NP(例:2025*12*25@00|00|00 NP)。
あなたの任務は、次の引数を受け取る関数を書くことです:
fromTime → エルフ形式の日付(YYYY*MM*DD@HH|mm|ss NP)で表した基準日時。
takeOffTime → 出発日時(同じくエルフ形式)。
関数は次を返さなければなりません:
- 出発までに残っている完全な秒数。
- ちょうど出発の瞬間であれば →
0
- 出発がすでに過ぎていれば → その時点から何秒経ったかを示す負の数
🎯 ルール
- まずエルフ形式をタイムスタンプに変換します。サフィックス
NP は北極標準時(タイムゾーンや夏時間なし)を示すので、UTC として扱ってかまいません。
- 差分は秒単位で計算し、ミリ秒は使わないこと。
- 必ず切り捨て(
floor)で丸めること:あくまで「完全な秒」だけです。
🧩 例
const takeoff = '2025*12*25@00|00|00 NP'
// 2025年12月24日 23:59:30(出発30秒前)
timeUntilTakeOff('2025*12*24@23|59|30 NP', takeoff)
// 30
// ちょうど出発の瞬間
timeUntilTakeOff('2025*12*25@00|00|00 NP', takeoff)
// 0
// 出発から12秒後
timeUntilTakeOff('2025*12*25@00|00|12 NP', takeoff)
// -12