2012-04-18 1 views
0

私はthis coding contestを試していましたが、私の単純なブルートフォースのpythonコードは "非ゼロ終了コード"で失敗します。私は問題が空の行を読むことであるかもしれないと思う。誰かが私にヒントを教えてもらえますか?入力を読み取っているときにPythonコードがエラーで終了する

import sys 
n = int(raw_input()) 
sys.stdin.readline() 
a=map(int,raw_input().split()) 
sys.stdin.readline() 
t = int(raw_input()) 
sys.stdin.readline() 
for i in range(1, t+1): 
k = int(raw_input()) 
if k*k in a: 
    print "YES" 
else: 
    print "NO" 
+0

そのページの入力例は、入力形式の記述と一致しません。 – interjay

+0

その問題に対してはPythonを使用するように注意してください。私が非常に間違っていない限り、期待される出力は32ビットの整数オーバーフローを前提としています。 –

+0

@DanielFischer、話題に..この問題を解決するためのより洗練された方法はありますか? – frodo

答えて

0

最初の行は、乱数の数Nで構成されます。

あなたはこれをうまく持っています。

次のN行は、これらのN個の数字で構成されています。

これは、1行に1つの番号を意味すると思われるが、私はこのような何かをしたい:

numbers = [] 
for i in range(n): 
    numbers += int(sys.stdin.readline()) 

Tは大丈夫に見えます。

+0

Hmm ..その問題のテストデータは間違っていたとみなされました。その隠されていた。とにかく感謝の気持ちとダニエルフィッシャー。 – frodo

関連する問題