Multiplication 2

AtCoder
IDabc169_b
Time2000ms
Memory256MB
Difficulty
Given $N$ integers $A_1, ..., A_N$, compute $A_1 \times ... \times A_N$. However, if the result exceeds $10^{18}$, print `-1` instead. ## Constraints * $2 \leq N \leq 10^5$ * $0 \leq A_i \leq 10^{18}$ * All values in input are integers. ## Input Input is given from Standard Input in the following format: $N$ $A_1$ $...$ $A_N$ [samples]
Samples
Input #1
2
1000000000 1000000000
Output #1
1000000000000000000

We have $1000000000 \times 1000000000 = 1000000000000000000$.
Input #2
3
101 9901 999999000001
Output #2
\-1

We have $101 \times 9901 \times 999999000001 = 1000000000000000001$, which exceeds $10^{18}$, so we should print `-1` instead.
Input #3
31
4 1 5 9 2 6 5 3 5 8 9 7 9 3 2 3 8 4 6 2 6 4 3 3 8 3 2 7 9 5 0
Output #3
0
API Response (JSON)
{
  "problem": {
    "name": "Multiplication 2",
    "description": {
      "content": "Given $N$ integers $A_1, ..., A_N$, compute $A_1 \\times ... \\times A_N$. However, if the result exceeds $10^{18}$, print `-1` instead.",
      "description_type": "Markdown"
    },
    "platform": "AtCoder",
    "limit": {
      "time_limit": 2000,
      "memory_limit": 262144
    },
    "difficulty": "None",
    "is_remote": true,
    "is_sync": true,
    "sync_url": null,
    "sign": "abc169_b"
  },
  "statements": [
    {
      "statement_type": "Markdown",
      "content": "Given $N$ integers $A_1, ..., A_N$, compute $A_1 \\times ... \\times A_N$.\nHowever, if the result exceeds $10^{18}$, print `-1` instead.\n\n## Constraints\n\n*   $2 \\leq N \\leq 10^5$\n*   $0 \\leq A_i \\leq 10...",
      "is_translate": false,
      "language": "English"
    }
  ]
}
Full JSON Raw Segments