AtCoder Beginner Contest 169 に参加したのですが、B問題がどうしてもACになりません。
after_contest_01.txt 以外のテストケースは全てACにできたのですが、このテストケースだけがどうしてもACにできません。このテストケース以外は中身が公表されていて確認できるのですが、このテストケースだけは中身が調べても分からないためどうコードを改善すればいいのかわかりません。教えて頂けたら幸いです。以下にコードを載せます。c++で書いています。
#include <bits/stdc++.h> #include<iostream> #include<string> using namespace std; #define rep(i, n) for (int i = 0; i < (int)(n); i++) int main() { long double n; cin >> n; vector<unsigned long long> a(n); rep(i,n) cin >> a.at(i); unsigned long long ans = a.at(0); rep(i,n-1) ans = ans * a.at(i+1); bool c = true; rep(i,n) { if(a.at(i) == 0) { c = false; break; }; }; if (ans > 1000000000000000000) { cout << "-1"; } else if (ans == 0) { if (c) { cout << "-1"; } else { cout << 0; }; } else { cout << setprecision(40) << ans; }; } ```
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/06/05 08:57