タグ付けされた質問 「new-years」

正月をテーマにしたパズル。

4
画像から2014年の数字を生成する
では2014年の挑戦、マイケル・スターンは、解析するためにOCRを使用することを提案している私は別の方向にこの挑戦を取るしたいと思います2014年に。選択した言語/標準ライブラリの組み込みOCRを使用して、ASCII文字列「2014」に解析される最小のイメージ(バイト単位)を設計します。 Sternの元の画像は7357バイトですが、少し手間をかけると980バイトに可逆圧縮できます。白黒バージョン(181バイト)も同じコードで機能することは間違いありません。 ルール:各回答では、画像、バイト単位のサイズ、および画像の処理に必要なコードを提供する必要があります。明らかな理由により、カスタムOCRは許可されません...!妥当な言語と画像形式が許可されます。 編集:コメントに応じて、既存のライブラリ、またはOCRが利用できない言語のhttp://www.free-ocr.com/を含むようにこれを拡大します。

1
現在の時刻を印刷…うるう秒を考慮に入れて
(注:関連ものの、この課題は、の重複ではありませんこの1、それは自分の時間を自動的にうるう秒を決定するのではなくハードコーディングする必要があるため、との重複ではありませんこの1難易度のほとんどは、うるう秒スキューなしで時間を決定するから来ているので、 、ほとんどの場合APIがデフォルトで実行しないものです。そのため、ソリューションは、これらの課題のいずれかのソリューションとは異なる可能性があります。 2016年の終わりに近づいていますが、ほとんどの人が予想するよりも少し長くかかります。それでは、今年の追加秒数を祝う挑戦です。 現在の時刻をUTCで時間、分、秒として出力します。(たとえば、正午の正規の出力フォーマットには、12:00:00とが含ま[12,0,0]れます。ここでは、フォーマットはそれほど重要ではありません。) ただし、ひねりがあります。プログラムはうるう秒を過去と未来の両方で適切に処理する必要があります。これは、プログラムがオンラインまたは自動的に更新/更新可能なソースからうるう秒のリストを取得する必要があることを意味します。必要に応じて、インターネットに接続してこれを取得できます。ただし、このチャレンジより前のURL(つまり、プログラムの一部を他の場所からダウンロードしない)にのみ接続でき、接続を使用して現在の時刻を特定することはできません(特に、アクセスしようとしてもプログラムは機能する必要があります)インターネットは最長24時間古いページを返します)。 現在のほとんどのオペレーティングシステムのデフォルトAPIは、他の方法では混乱する可能性のあるプログラムからそれらを隠すために、うるう秒あたりの時間をゆがめます。そのため、この課題の主な難点は、それを元に戻すメソッドまたはAPIを見つけ、UTCで変更されていない真の現在時刻を計算することです。 理論的には、プログラムが無限に高速なコンピューターで実行された場合、プログラムは完全に正確である必要があり、実行に意図的にゼロ以上の時間をかけてはなりません。(もちろん、実際には、プログラムは不完全なコンピューター上で実行されるため、おそらく瞬時には実行されません。これが結果を無効にすることを心配する必要はありませんが、プログラムの正確さをそれに依存してはなりません。 ) システムクロックがどのタイムゾーンに設定されているかに関係なく、プログラムは機能する必要があります。(ただし、使用されているタイムゾーンについてオペレーティングシステムまたは環境からの情報を要求する場合があり、応答が正確であると想定する場合があります。) コードゴルフ、最短プログラムが勝ちます。幸運を!

14
それは何年のことか?
2014年12月で、2015年はもうすぐ始まります。しかし、誰もがこれを実現しているわけではないようです。 しかし、PPCGの人々が助けに来ます! 入力 プログラムには壁のようなグリッドが与えられ、12月の月の日は11月と1月の日とは異なります。毎週日曜日から始まり、土曜日に終わります。 月内の日はで表されます#。月の外にある日は、(スペース、ASCIIコード32)で表されます。毎週別々の行にあります。行は改行文字(\n)で区切られます。プログラムでは、入力の最後に改行を省略するか含める必要があります。 たとえば、これは2009年12月の入力です。 ##### ####### ####### ####### ##### カレンダーは常に12月です。 仕事 入力を指定すると、カレンダーに関連付けられている年を見つける必要があります。カレンダーが一致する年は複数あるため、2015に最も近い年(2015より前)を返す必要があります(2015自体を除く)。 プログラムは、2015年に近い別の年(2015年より前)と同じ12月のカレンダーレイアウトを持つものを除き、2015年未満のすべての年について正しい出力を生成する必要があります。 年が2014年未満の場合は、2014との年の差も計算する必要があります。たとえば、2012の場合、差は2です。 出力 プログラムの出力は次のようになります。 テキスト:(Your calendar is for <year>.注:これはもともと「カレンダー」と綴られていたので、その綴りも受け入れます。) 改行が続く(\nまたは\r\n)。 次のテキスト: It's almost 2015. 年が2014年未満の場合は、この後にテキストを続けるYou're <difference> years behind.必要があります。これは別の行にする必要があります。 改行が続く(\nまたは\r\n)。 次のテキスト: Go buy a new calendar! 必要に応じて、改行(\nまたは\r\n)を続けます。 ルール カレンダーをコマンドライン引数(例:)として受け取るかyourprogram.exe <calendar>、ユーザー入力を求めるかを選択できます。 プログラムが無効な入力を受信しないと想定する場合があります。無効な入力には、年が存在しないカレンダーレイアウトが含まれています。 最短のコード(バイト数、任意の言語)が優先されます。 非標準のコマンドライン引数(スクリプトの実行に通常必要とされない引数)は、合計文字数にカウントされます。 プログラムで禁止されていること: 外部リソースに依存します。 特定のファイル名を持つことに依存します。 必要な出力以外のものを出力します。 …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.