Submission details
Task:Trade
Sender:z
Submission time:2016-09-13 17:08:03 +0300
Language:C++
Status:READY
Result:
Test results
testverdicttime
#1ACCEPTED0.04 sdetails
#2ACCEPTED0.05 sdetails
#3ACCEPTED0.05 sdetails
#4ACCEPTED0.05 sdetails
#5ACCEPTED0.06 sdetails
#60.05 sdetails
#70.06 sdetails
#8ACCEPTED0.05 sdetails
#9ACCEPTED0.06 sdetails
#10ACCEPTED0.05 sdetails
#110.05 sdetails
#120.05 sdetails
#130.06 sdetails
#140.05 sdetails
#150.05 sdetails
#160.06 sdetails
#170.05 sdetails
#180.06 sdetails
#190.05 sdetails
#200.06 sdetails
#210.05 sdetails
#220.05 sdetails
#230.07 sdetails
#240.05 sdetails
#250.05 sdetails
#260.06 sdetails
#270.05 sdetails
#280.06 sdetails
#290.06 sdetails
#300.06 sdetails

Compiler report

input/code.cpp: In function 'int main()':
input/code.cpp:25:27: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   for (int i=0; i<ag.size(); ++i){
                           ^
input/code.cpp:33:26: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
       while (g+1<ag.size() && ag[g].first==ag[g+1].first) ++g;
                          ^
input/code.cpp:18:7: warning: unused variable 'l' [-Wunused-variable]
   int l=0;
       ^

Code

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

int n;

int d[101];

vector<pair<int, int> > ag;

int t[101][101];

int kk;

int main(){
  cin >> n;
  int l=0;
  for (int i=0; i<n; ++i){
    cin >> d[i];
    kk+=d[i];
    ag.push_back(make_pair(-d[i], i));
  }
  sort(ag.begin(), ag.end());
  for (int i=0; i<ag.size(); ++i){
    if (-ag[i].first*2>kk){
      cout << "QAQ\n";
      return 0;
    }
    cout << ag[i].first << endl;
    while (ag[i].first){
      int g=i+1;
      while (g+1<ag.size() && ag[g].first==ag[g+1].first) ++g;
      while (g>i && ag[i].first){
	++ag[g].first;
	++ag[i].first;
	++t[ag[i].second][ag[g].second];
	++t[ag[g].second][ag[i].second];
	kk-=2;
	--g;
      }
      if (ag[i].first>0) break;
    }
  }
  for (int i=0; i<n; ++i){
    for (int j=0; j<n; ++j) cout << t[i][j] << " ";
    cout << "\n";
  }
}

Test details

Test 1

Verdict: ACCEPTED

input
2
78 16

correct output
QAQ

user output
QAQ

Test 2

Verdict: ACCEPTED

input
2
87 93

correct output
QAQ

user output
QAQ

Test 3

Verdict: ACCEPTED

input
2
63 29

correct output
QAQ

user output
QAQ

Test 4

Verdict: ACCEPTED

input
2
64 28

correct output
QAQ

user output
QAQ

Test 5

Verdict: ACCEPTED

input
1
74

correct output
QAQ

user output
QAQ

Test 6

Verdict:

input
3
69 68 31

correct output
0 53 16 
53 0 15 
16 15 0 

user output
-69
-15
0
0 53 16 
53 0 15 
...

Test 7

Verdict:

input
3
63 24 69

correct output
0 9 54 
9 0 15 
54 15 0 

user output
-69
-9
0
0 9 54 
9 0 15 
...

Test 8

Verdict: ACCEPTED

input
3
3 23 60

correct output
QAQ

user output
QAQ

Test 9

Verdict: ACCEPTED

input
1
94

correct output
QAQ

user output
QAQ

Test 10

Verdict: ACCEPTED

input
2
43 30

correct output
QAQ

user output
QAQ

Test 11

Verdict:

input
74
22 20 85 38 99 25 16 71 14 27 ...

correct output
0 9 2 0 0 0 0 0 0 0 0 0 0 0 0 ...

user output
-100
-85
-80
-76
-72
...

Test 12

Verdict:

input
66
90 45 20 41 30 32 18 98 72 82 ...

correct output
0 20 0 0 0 0 0 16 0 0 0 0 0 0 ...

user output
-98
-81
-73
-67
-63
...

Test 13

Verdict:

input
29
76 8 75 22 59 96 30 38 36 94 1...

correct output
0 4 24 0 0 0 0 0 0 0 0 0 0 0 0...

user output
-96
-65
-54
-45
-39
...

Test 14

Verdict:

input
18
18 97 25 44 71 84 91 100 73 26...

correct output
0 12 0 0 0 0 0 0 0 0 0 0 0 0 0...

user output
-100
-73
-63
-54
-46
...

Test 15

Verdict:

input
43
65 98 8 56 5 49 12 23 29 100 4...

correct output
0 28 0 0 0 0 0 0 0 0 0 0 0 0 0...

user output
-100
-69
-59
-53
-48
...

Test 16

Verdict:

input
69
72 74 32 82 31 34 95 61 64 100...

correct output
0 37 0 0 0 0 0 0 0 0 0 0 0 0 0...

user output
-100
-85
-79
-74
-70
...

Test 17

Verdict:

input
31
85 93 73 73 51 26 86 23 100 41...

correct output
0 33 0 0 0 0 0 0 0 0 0 0 0 0 0...

user output
-100
-81
-72
-67
-61
...

Test 18

Verdict:

input
61
43 80 85 94 6 22 68 5 14 62 55...

correct output
0 14 0 0 0 0 0 0 0 0 0 0 0 0 0...

user output
-99
-84
-77
-72
-67
...

Test 19

Verdict:

input
37
61 15 22 61 5 29 28 51 49 57 3...

correct output
0 6 4 25 0 0 0 0 0 0 0 0 0 0 0...

user output
-100
-71
-58
-51
-46
...

Test 20

Verdict:

input
44
36 78 1 39 72 50 90 68 89 93 9...

correct output
0 17 0 0 0 0 0 0 0 0 0 0 0 0 0...

user output
-97
-79
-71
-66
-61
...

Test 21

Verdict:

input
87
1 47 27 95 17 53 79 30 47 91 4...

correct output
0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 ...

user output
-100
-84
-78
-74
-71
...

Test 22

Verdict:

input
63
83 91 93 92 58 16 22 58 75 92 ...

correct output
0 48 0 0 0 0 0 0 0 0 0 0 0 0 0...

user output
-100
-81
-75
-70
-66
...

Test 23

Verdict:

input
15
90 69 94 19 6 83 23 83 18 31 9...

correct output
0 37 8 0 0 0 0 0 0 0 0 0 0 0 4...

user output
-94
-74
-62
-52
-42
...

Test 24

Verdict:

input
54
44 75 15 14 80 78 63 76 89 20 ...

correct output
0 23 0 0 0 0 0 0 0 0 0 0 0 0 0...

user output
-96
-79
-72
-66
-62
...

Test 25

Verdict:

input
64
78 97 82 66 61 37 56 71 19 12 ...

correct output
0 32 0 0 0 0 0 0 0 0 0 0 0 0 0...

user output
-99
-78
-72
-68
-65
...

Test 26

Verdict:

input
19
2 4 54 34 8 60 29 7 98 21 85 9...

correct output
0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 ...

user output
-99
-71
-54
-45
-36
...

Test 27

Verdict:

input
72
90 60 7 11 17 25 10 40 1 79 10...

correct output
0 33 0 0 0 0 0 0 0 12 0 0 2 0 ...

user output
-100
-85
-80
-76
-73
...

Test 28

Verdict:

input
64
61 83 12 86 87 86 31 91 84 15 ...

correct output
0 32 0 0 0 0 0 0 0 0 0 0 0 0 0...

user output
-100
-85
-80
-75
-71
...

Test 29

Verdict:

input
67
53 18 42 36 69 99 85 96 77 6 6...

correct output
0 9 9 0 8 0 0 0 0 0 0 0 0 0 0 ...

user output
-100
-84
-78
-73
-69
...

Test 30

Verdict:

input
57
91 42 71 53 66 12 70 18 62 84 ...

correct output
0 18 11 0 0 0 0 0 0 5 0 0 0 0 ...

user output
-96
-78
-70
-66
-62
...