Submission #4132387


Source Code Expand

Copy
#include <iostream>
#include <vector>
using namespace std;

int main(){
  int N;
  cin >> N;
  vector<long long> A(N);
  for(int i = 0; i < N; ++i) cin >> A[i];
  int m = 0, M = 0;
  for(int i = 0; i < N; ++i){
    if(A[i] < A[m]) m = i;
    if(A[i] > A[M]) M = i;
  }
  if(abs(A[m]) < abs(A[M])){
    cout << 2*N << endl;
    cout << 1 << " " << M+1 << endl;
    cout << 1 << " " << M+1 << endl;
    A[0] += 2*A[M];
    for(int i = 1; i < N; ++i){
      cout << i+1 << " " << i << endl;
      cout << i+1 << " " << i << endl;
      A[i] += A[i-1]*2;
    }
    //for(int i = 0; i < N; ++i) cerr << A[i] << " "; cerr << endl;
  }else{
    cout << 2*N << endl;
    cout << N << " " << m+1 << endl;
    cout << N << " " << m+1 << endl;
    A[N-1] += 2*A[m];
    for(int i = N; i > 1; --i){
      cout << i-1 << " " << i << endl;
      cout << i-1 << " " << i << endl;
      A[i-2] += A[i-1]*2;
    }
    //for(int i = 0; i < N; ++i) cerr << A[i] << " "; cerr << endl;
  }
}

Submission Info

Submission Time
Task D - Non-decreasing
User TAB
Language C++14 (GCC 5.4.1)
Score 0
Code Size 1009 Byte
Status
Exec Time 2 ms
Memory 256 KB

Test Cases

Set Name Score / Max Score Test Cases
Sample 0 / 0 00_example_01.txt, 00_example_02.txt, 00_example_03.txt
All 0 / 600 00_example_01.txt, 00_example_02.txt, 00_example_03.txt, 01.txt, 02.txt, 03.txt, 04.txt, 05.txt, 06.txt, 07.txt, 08.txt, 09.txt, 10.txt, 11.txt, 12.txt, 13.txt, 14.txt, 15.txt, 16.txt, 17.txt, 18.txt, 19.txt, 20.txt, 21.txt, 22.txt, 23.txt, 24.txt, 25.txt, 26.txt, 27.txt, 28.txt, 29.txt, 30.txt, 31.txt, 32.txt, 33.txt, 34.txt, 35.txt, 36.txt, 37.txt, 38.txt, 39.txt
Case Name Status Exec Time Memory
00_example_01.txt 1 ms 256 KB
00_example_02.txt 1 ms 256 KB
00_example_03.txt 1 ms 256 KB
01.txt 1 ms 256 KB
02.txt 2 ms 256 KB
03.txt 1 ms 256 KB
04.txt 1 ms 256 KB
05.txt 1 ms 256 KB
06.txt 1 ms 256 KB
07.txt 1 ms 256 KB
08.txt 2 ms 256 KB
09.txt 2 ms 256 KB
10.txt 2 ms 256 KB
11.txt 2 ms 256 KB
12.txt 1 ms 256 KB
13.txt 1 ms 256 KB
14.txt 2 ms 256 KB
15.txt 2 ms 256 KB
16.txt 1 ms 256 KB
17.txt 2 ms 256 KB
18.txt 2 ms 256 KB
19.txt 1 ms 256 KB
20.txt 2 ms 256 KB
21.txt 1 ms 256 KB
22.txt 1 ms 256 KB
23.txt 2 ms 256 KB
24.txt 1 ms 256 KB
25.txt 2 ms 256 KB
26.txt 1 ms 256 KB
27.txt 2 ms 256 KB
28.txt 2 ms 256 KB
29.txt 2 ms 256 KB
30.txt 1 ms 256 KB
31.txt 1 ms 256 KB
32.txt 1 ms 256 KB
33.txt 1 ms 256 KB
34.txt 2 ms 256 KB
35.txt 2 ms 256 KB
36.txt 1 ms 256 KB
37.txt 2 ms 256 KB
38.txt 2 ms 256 KB
39.txt 2 ms 256 KB