Diberi cap waktu unix sebagai input, berikan string datetime, dalam format seperti: "YYMMDD.HHmm"
Aturan
- Input adalah angka (bilangan bulat) dari waktu UNIX yang tepat dalam milidetik (milidetik sejak 1970 1 Januari 00: 00: 00.000 UTC).
- Nilai harus diisi dengan nol jika mereka adalah 1 karakter dan bukan 2. (mis: untuk "DD", "1" tidak dapat diterima, tetapi "01" adalah.)
- Output harus berupa string tunggal. Tidak ada array.
- Menangani lompatan kedua tidak masalah.
- Kemenangan terpendek.
Semoga berhasil!
Contoh
Input: 1547233866744
Output: 190111.1911
Jawaban:
Japt v1.4.5 ,
1916 byte1 byte disimpan berkat Oliver , yang menyebabkan 2 byte lainnya disimpan.
Cobalah
Penjelasan
Catatan / Tips
G
digunakan untuk menyisipkan.
pada indeks yang diperlukan karena menggunakan literal6
akan menyebabkannya digabungkan dengan.
dan untuk itu ditafsirkan sebagai desimal yang akan dimasukkan pada awal string . Untuk menyiasatinya saya perlu menambahkan'
sebelum.
untuk memaksanya ditafsirkan sebagai string .17
dan dari v1.4.6 untuk mencoba memasukkan sesuatu pada indeks pertama melewati akhir sebuah string, hasilnya dimasukkan di akhir string (A
adalah Japt konstan untuk10
) sedangkan sebelum v1.4.6 ia segera membungkus kembali ke awal string .sumber
JavaScript (ES6), 65 byte
Cobalah online!
Bagaimana?
Kami menginisialisasi penunjuksaya ke nilai non-numerik (dipaksakan ke 0 ) dan kemudian menambahkan secara bergantian 2 dan 1 untuk memilih karakter yang relevan dari konversi ISO-8601 dari timestamp input.
JavaScript (ES6), 66 byte
Cobalah online!
Bagaimana?
Setelah timestamp input dikonversi dalam format ISO-8601, semua karakter yang diperlukan dapat diakses dengan satu digit heksadesimal.
sumber
n=>'235689.11121415'.replace(/1?\w/g,x=>new Date(n).toJSON()[x])
Bash + coreutils, 29 byte
Cobalah online!
sumber
PHP ,
403231 byte-8 byte berkat Luis felipe
-1 byte terima kasih kepada Jo King
Cobalah online!
Jawaban naif sederhana.
date
Fungsi PHP mengambil string format dan cap waktu integer. Masukan dari argumen cli, yang merupakan string secara default, maka/1e3
karenadate
mengharapkan cap waktu tepat kedua. Ini juga memaksa string ke nomor.sumber
"2"/1
akan secara otomatis memasukkan string/1000
, dan tidak berpikir bahwa saya mungkin tidak memerlukannya setelah itu: PMATL , 28 byte
Terima kasih kepada @skiilaa untuk koreksi dalam format output.
Cobalah online!
Penjelasan
MATL, seperti MATLAB, mendefinisikan angka tanggal / waktu sebagai (mungkin bukan bilangan bulat) hari sejak waktu 00:00 dari "tanggal" referensi 0-Jan-0000.
Jadi kami mengambil input, membaginya dengan 86400000 (jumlah milidetik dalam satu hari), tambahkan 719529 (jumlah hari dari referensi MATL ke referensi UNIX), dan konversikan ke format yang diinginkan 'YYmmDD.HHMM'.
sumber
PowerShell ,
5958 byteCobalah online!
Mendapat
Date
dari1/1/1970
(default ke 00:00:00 pagi), laluAdd
s jumlah yang sesuaiSeconds
. Mengirimnya ke-f
operator ormat, yang memformat datetime dengan benar.Mungkin tergantung budaya. Ini bekerja pada TIO, yaitu
en-us
.-1 byte berkat shaggy.
sumber
GNU AWK,
3433 karakter(
strftime()
adalah ekstensi GNU, tidak akan berjalan di implementasi AWK lainnya.)Terimakasih untuk:
Sampler run:
Cobalah online!
sumber
Perl 6 ,
111 8987 byteCobalah (111)
Cobalah (89)
Cobalah (87)
Penjelasan:
The
o
Operator infiks mengambil dua fungsi dan menciptakan fungsi komposit. Yang paling kanan dipanggil terlebih dahulu, dan yang ke kiri dipanggil dengan hasilnya.Pada dasarnya kami menggunakan 4 blok lambdas untuk menghasilkan satu lambda.
Yang tidak jauh berbeda dengan bagaimana lambda LIKE ApapunCode
* + *
dibuat.Bagilah dengan 1000 dan gunakan itu untuk membuat objek DateTime.
Hasilnya akan digunakan oleh:
Itu membuat kita seperti string
2019-01-11.19 11
Kami perlu menghapus dua digit pertama
Kami juga perlu menghapus
-
dansumber
Python 2 , 64 byte
Cobalah online!
Masukan dianggap dalam UTC.
sumber
lambda
datang sebelumimport
karena berfungsi lebih baik untuk header TIO?NameError
sebelum disebut.R ,
5856 byteCobalah online!
sumber
C (gcc) (32-bit, little endian), 67 byte
Cobalah online!
Pada platform ILP64, versi 55 byte berikut ini akan berfungsi:
sumber
s
argumen tambahan yang Anda ambil?s
Adalah untuk string output.long long
bukanlong
atauint32_t
,int64_t
,time_t
? IAC, semua lebih pendek darilong long
.Perl 6 ,
5750 byteCobalah online!
Mengambil pengetatan default Datetime, dalam format
yyyy-mm-ddThh:mm:ssZ
dan memodifikasinya agar sesuai dengan format output. Perl 6 membutuhkan metode formatter tanggal.Penjelasan:
sumber
C # (Visual C # Interactive Compiler) ,
676160 byteUntuk alasan yang tidak saya ketahui, DateTime.UnixEpoch tidak berfungsi.
Cobalah online!
sumber
Javascript ES6,
7666 byteCobalah online
-10 byte berkat Shaggy!
sumber
C (dentang) ,
117111 byteTerima kasih kepada @chux dan @ceilingcat untuk sarannya.
Cobalah online!
sumber
gmtime
lebih pendek darilocaltime
Ranting, 25 karakter
Ini adalah templat. Sebut dengan memasukkannya dan lulus waktu Unix sebagai parameter d.
Penggunaan sampel:
Cobalah di TwigFiddle
sumber
JavaScript, 64 byte
Cobalah online!
sumber
jq, 33 karakter
(30 karakter kode + 3 opsi opsi baris perintah)
Contoh dijalankan:
Cobalah online!
sumber
1000
->1e3
ksh , 36 byte
Cobalah online!
Terima kasih kepada Jo King untuk 15 byte yang disimpan
sumber
MediaWiki, 46 byte
sumber
Java 8, 78 byte
Cobalah online.
Penjelasan:
sumber