チャレンジを提案してください!


14

私は退屈すぎて、解決するための挑戦が欲しいです。しかし、私は興味深い挑戦を見ていません、そして、私は1つを探すのが面倒です。(まあ、厳密にはあなたのコード)私に提案できますか?


I / O

入力:なし。

出力: PPCGのランダムなオープン(つまり、クローズされていない)チャレンジ(「チャレンジ」は除外し!)へのリンク。チャレンジ内の回答にリンクすることはできません。ただのチャレンジです。(私は興味深い答えを求めませんでした!)


有効:

http://codegolf.stackexchange.com/questions/93288/make-me-a-mooncake
http://codegolf.stackexchange.com/questions/113796/raise-a-single-number
http://codegolf.stackexchange.com/questions/113898

無効:

http://codegolf.stackexchange.com/questions/78152/tips-for-golfing-in-matl (tips question)
http://codegolf.stackexchange.com/questions/113896/josephus-problem (closed)
http://codegolf.stackexchange.com/questions/84260/add-two-numbers/84365#84365 (linked to answer)

http://codegolf.stackexchange.com/questions/93288/代わりに出力できますかhttp://codegolf.stackexchange.com/questions/93288/make-me-a-mooncake(チャレンジ名がないことに注意してください)。
クリチキシリトス

@Kritixi Lithos確かに、動作します。
マシュー

すべてのヒントの質問の名前に「ヒント」という単語が含まれているわけではありません。たとえば、これを参照してください。それは許可されていますか、または「tips」タグのチャレ​​ンジを削除するつもりですか?
seshoumara

@seshoumara後者は、「ヒント」をタグとして入力した理由でもあります。
マシュー

PPCGの基準を満たす約6kの質問があります。すべてがランダムに選択される可能性が必要ですか、それとも検索リンクから取得した最初の50の結果からランダムに選択できますか?
seshoumara

回答:


4

JavaScript(ES6)、209バイト

動作しますが、ほとんどの場合、StackExchange APIの制限にすぐに到達します。有効な質問をランダムにチェックしているため、リンクの出力にはおそらく時間がかかります。

_=>fetch(`//api.stackexchange.com/2.2/questions/${new Date%2e4}?site=codegolf`).then(_=>_.json()).then((a,b=a.items)=>{if(!b.length||b[0].tags.includes`tips`||b[0].closed_date)f();else console.log(b[0].link)})

f=_=>fetch(`//api.stackexchange.com/2.2/questions/${new Date%2e4}?site=codegolf`).then(_=>_.json()).then((a,b=a.items)=>{if(!b.length||b[0].tags.includes`tips`||b[0].closed_date)f();else console.log(b[0].link)})

f();


OPは、要件に適合するすべての質問がランダムに選択される機会を持つ必要があると述べました。
seshoumara

@seshoumaraは修正されました。
トム

URLからAPIバージョンを削除して、4バイトを節約します。
シャギー

ガットcodegolf.stackexchange.com/questions/173/...有効ではありません
sergiolは

これが発生していることを確認することができますヒント ...あまりにも挑戦を
FlipTack

2

Python 3、452 339バイト

from requests import*
from random import*
while 1:
    n=randrange(999999)
    r=get("http://api.stackexchange.com/questions/%d?site=codegolf"%n).json()
    if r["items"]:
        m=r["items"][0]
        if "tips" not in m["tags"]:
            try:m["closed_date"]
            except:print("http://codegolf.stackexchange.com/q/%d"%n);break

少し見苦しく、あまりゴルフっぽくはありませんが、より良い方法を見つけることができませんでした。これにより多かれ少なかれAPIがブルートフォースになるため、割り当てをかなり早く使い切ってエラーが発生し始めますが、数時間後には再び機能します。

編集:NoOneIsHereのおかげで、複数の不要なものを削除することで113バイトを節約しました。


l一度しか使用しないため、不要です。
-NoOneIsHere

そのとおりです。それが有効だった場合、後でリンクを印刷できるようにしましたが、通常のリンクではなくAPIリンクを印刷しました。思い出させてくれてありがとう。
LyricLy

また、あなたはオンラインで、tryそして多分except
-NoOneIsHere

それも正しいです。再度、感謝します。
LyricLy

喜んでお手伝いします。パッド
-NoOneIsHere

1

SEDE SQL:79バイト

Select Id from posts where ClosedDate IS NULL AND Tags !='tips' ORDER BY RAND()

2つのキャッチがあります。もう一度実行する前にしばらく待つ必要があるか、キャッシュヒットが発生し(modが私に言ったように)、質問ID番号のみを取得します。


私は怠け者でも入力することができないためにということではないですので、それが有効だと思う
マシュー盧

はい!あなたの言葉はあなたの挑戦
クリストファー
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.