SE sera fermé / lu seulement aujourd'hui 2017-05-04 à 00:00 UTC jusqu'à 00:20 UTC.
Votre défi est de produire une valeur vraie si SE est en baisse / en lecture seule et une valeur fausse si SE ne l'est pas. Vous ne pouvez pas avoir d'entrée, et vous devez utiliser les commandes internes de date pour déterminer si SE est en panne / en lecture seule (sans interroger réellement l'api SE!) Exemple de sortie:
12:34 UTC 03 May 2017 -> false
00:00 UTC 04 May 2017 -> true
00:20 UTC 20 May 2017 -> undefined, see below
C'est un comportement indéfini, car il est trop loin après la fenêtre de temps. Pour être clair, vous pouvez supposer que votre programme sera exécuté de l'UTC 8:00
aujourd'hui (5/3/17) à UTC 1:00
demain (5/4/17).
00:21 UTC 04 May 2017 -> false
00:20 UTC 04 May 2017 -> true
00:10 UTC 04 May 2017 -> true
Notez que toutes les valeurs véridiques ou fausses sont autorisées, pas seulement true
et false
. Vous devez être précis à la seconde près et ne pas changer l'horloge du système! Vous pouvez supposer que votre programme est exécuté sur une machine du +0 UTC
fuseau horaire.
la source
sudo time <insert time here> && echo true
Réponses:
05AB1E ,
32261198 octetsExplication:
Essayez-le en ligne!
la source
JavaScript (ES6),
2624232221 octetsEnregistré 3 octets grâce à Shaggy et 1 octet grâce à Luke .
Vérifie si le temps écoulé dans la journée en cours est inférieur à 1 200 000 ms (1 200 s ou 20 min). Suppose que le temps d'arrêt est de 20 minutes et non 21, ce qui semble être le cas dans le message lié.
00:20UTC
est la limite supérieure exclusive.la source
new Date
au lieu denew Date()
.<2
pour enregistrer un autre octet.+
;/
convertit automatiquementnew Date
en aNumber
.alert
beaucoup plus longuePython 2 ,
4139 octetsEnregistré 2 octets grâce à Erik l'Outgolfer
Essayez-le en ligne!
Utilise le même algorithme que mes réponses JS et Charcoal.
la source
/72<1
différent de<72
?print time.time()/1200<72
serait une façon plus courte d'exprimer la même chose.%1200/72<1
->%1200<72
. Votre TIO est lié à la%1200/72<1
version - est-ce une erreur?Gelée , 9 octets
A besoin
TZ
d'être défini surUTC
, ce qui est le cas pour TIO.Essayez-le en ligne!
Comment ça fonctionne
la source
00:21
, je pourrais économiser un octet ...Japt ,
3211 octetsEssayez-le en ligne!
la source
zsh,
3837 octets:la source
bash, 40 octets:
la source
JS (ES6),
525049 octetsPourquoi est-ce
Date
si long? Obtient juste les minutes passées00:00
et revienttrue
si elles sont <21, etfalse
sinon.la source
new Date
au lieu denew Date()
.y=>(x=new Date).getUTCMinutes()<21&&!x.getUTCHours()
.APL (Dyalog), 14 octets
∧/
est-il vrai (ET réduction) que1 20>
ces nombres sont supérieurs à2↑
les deux premiers éléments de3↓⎕TS
le bourrage T ime S actuel avec trois éléments a chutéla source
⎕
?⎕
(Quad) est un préfixe pour les noms de système dans APL. Il est censé être un rectangle vide.Fusain , 25 octets
Impressions
-
pour la vérité, rien pour la fausse.Explication
Essayez-le en ligne!
la source
⟦⟧
ici? Avez-vous besoin d'une liste ou d'une liste de flèches littérale?Alice , 17 octets
Essayez-le en ligne!
Suppose être exécuté sur une machine dont le fuseau horaire est défini sur UTC (comme le serveur TIO).
Explication
En mode Ordinal, l'IP rebondit en diagonale dans le programme. En mode Cardinal, l'IP s'enroule autour des bords comme la plupart des autres Fungeoids.
la source
MATL , 10 octets
Merci à Dennis pour plusieurs corrections
Essayez-le en ligne!
Explication
la source
l72
plutôt que171
dans votre explication?72
contre71
. Ne serait - ce retour aussi0
à00:20
?0
à00:20
, mais reviendrait1
à00:20
moins une petite fraction de seconde (donnée par la machine epsilon pourdouble
les temps de type de données86400
). Le défi dit "vous devez être précis à la minute près", donc je comprends que c'est acceptable00:20 -> true
comme cas de test. Laissé un commentaire sur la question.Python 3 (NON-REPL) + temps,
8177 octets-4 octets grâce à Bahrom
Une approche naïve, transformant la date actuelle en chaîne et analysant ses personnages.
la source
import time;e=str(time.strftime('%H:%M'));e[:2]=='00'and int(e[2:])<21
. Cela peut probablement être joué encore plus loin.import time;time.localtime();_.tm_hour==0 and _.tm_min<21
. Nous nePyth, 11 octets
Lien interprète en ligne
la source
Bash ,
55535150 octets-1 octet du commentaire de @ robbie0630.
Essayez-le en ligne!
L'avantage de cette solution est qu'elle fonctionne pour n'importe quelle date (elle ne reviendra donc
1
que pour la période définie dans le défi, car elle utilise le temps de l'époque).la source
$(...)
par`...`
Fondation Swift +, 178 octets
Assez court selon des normes rapides. Vérifiez-le!
Comme dans ma réponse Python, j'ai essentiellement converti le courant
Date
en une chaîne et j'ai analysé ses chiffres, en fonction de celui sur lequel j'ai imprimé le booléen.la source
R, 65 octets
Vérifie si l'heure == 0 et la minute <21.
la source
PostgreSQL, 43 caractères
Tout simplement parce que je préfère SQL pour les calculs de date / heure.
Exemple d'exécution:
la source