CSES - Putka Open 2015 – 3/6 - Results
Submission details
Task:Ruudukko
Sender:
Submission time:2015-09-11 16:34:15 +0300
Language:C++
Status:READY
Result:0
Feedback
groupverdictscore
#10
#20
#30
Test results
testverdicttimegroup
#10.05 s1details
#20.05 s1details
#30.05 s1details
#40.06 s1details
#50.06 s1details
#60.06 s2details
#70.06 s2details
#80.06 s2details
#90.05 s2details
#100.05 s2details
#110.05 s3details
#120.05 s3details
#130.05 s3details
#140.05 s3details
#150.06 s3details

Code

#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
#include <set>
#include <iomanip>

#define uint unsigned int
#define INF 999999999
#define ll long long
#define M 1000000007
#define E 0.0000001
#define N 131072

using namespace std;

int main()
{
    int t;
    cin>>t;

    for (int test = 0; test < t; test++) {
        int a, b, c, n;
        cin>>a>>b>>c>>n;
        int v[] = {a, b, c};
        sort(v, v + 3);
        if (v[0] != v[1] && v[1] != v[2]) {
            int o = min(min(v[1] - v[0], v[2] - v[1]), n);
            n -= o;
            v[0] += o;
            v[2] -= o;
        }
        if (v[0] == v[1] && v[1] == v[2]) {
            if (n % 2 == 1) cout<<v[0]+1<<" "<<v[0]<<" "<<v[0]-1<<endl;
            else cout<<v[0]<<" "<<v[0]<<" "<<v[0]<<endl;
        } else if (n) {
            if (v[0] == v[1]) {
                int o = min(((v[2] - v[1]) * 2) / 3, n);
                n -= 2 * o;
                v[2] -= o;
                v[1] += o / 2;
                v[0] += o - (o / 2);
            } else {
                int o = min(((v[1] - v[0]) * 2) / 3, n);
                n -= 2 * o;
                v[0] += o;
                v[1] -= o / 2;
                v[2] -= o - (o / 2);
            }
            sort(v, v + 3);
            if (n % 2 == 1) cout<<v[0]+1<<" "<<v[1]<<" "<<v[2]-1<<endl;
            else cout<<v[0]<<" "<<v[1]<<" "<<v[2]<<endl;
        } else cout<<v[0]<<" "<<v[1]<<" "<<v[2]<<endl;
    }

    return 0;
}

Test details

Test 1

Group: 1

Verdict:

input
2

correct output
....................
.###################
.###################
.###################
.###################
...

user output
0 1 2
0 1 2

Test 2

Group: 1

Verdict:

input
5

correct output
....................
.################..#
.#################..
.#################..
.##################.
...

user output
0 1 2
0 1 2
0 1 2
0 1 2
0 1 2

Test 3

Group: 1

Verdict:

input
7

correct output
....................
.################..#
.#################..
.#################..
.##################.
...

user output
0 1 2
0 1 2
0 1 2
0 1 2
0 1 2
...

Test 4

Group: 1

Verdict:

input
8

correct output
....................
.###################
.###################
.###################
.###################
...

user output
0 1 2
0 1 2
0 1 2
0 1 2
0 1 2
...

Test 5

Group: 1

Verdict:

input
9

correct output
....................
.###################
.###################
.###################
.###################
...

user output
0 1 2
0 1 2
0 1 2
0 1 2
0 1 2
...

Test 6

Group: 2

Verdict:

input
19

correct output
....................
.############..#####
.#############..####
.#############...###
.##############...##
...

user output
0 1 2
0 1 2
0 1 2
0 1 2
0 1 2
...

Test 7

Group: 2

Verdict:

input
32

correct output
....................
.###################
.###################
.###################
.###################
...

user output
0 1 2
0 1 2
0 1 2
0 1 2
0 1 2
...

Test 8

Group: 2

Verdict:

input
44

correct output
....................
.################..#
.#################..
.#################..
.##################.
...

user output
0 1 2
0 1 2
0 1 2
0 1 2
0 1 2
...

Test 9

Group: 2

Verdict:

input
76

correct output
....................
.########..######..#
.#########..######..
.#########...#####..
.##########...#####.
...

user output
0 1 2
0 1 2
0 1 2
0 1 2
0 1 2
...

Test 10

Group: 2

Verdict:

input
93

correct output
....................
.########..##..##..#
.#########..##..##..
.#########...#...#..
.##########...#...#.
...

user output
0 1 2
0 1 2
0 1 2
0 1 2
0 1 2
...

Test 11

Group: 3

Verdict:

input
141

correct output
....................
.################..#
.#################..
.#################..
.##################.
...

user output
0 1 2
0 1 2
0 1 2
0 1 2
0 1 2
...

Test 12

Group: 3

Verdict:

input
422

correct output
....................
.####..##########..#
.#####..##########..
.#####...#########..
.######...#########.
...

user output
0 1 2
0 1 2
0 1 2
0 1 2
0 1 2
...

Test 13

Group: 3

Verdict:

input
671

correct output
....................
.#.##########..##..#
....##########..##..
.#...#########...#..
.##...#########...#.
...

user output
0 1 2
0 1 2
0 1 2
0 1 2
0 1 2
...

Test 14

Group: 3

Verdict:

input
895

correct output
....................
.#.##..##..##..##..#
....##..##..##..##..
.#...#...#...#...#..
.##...#...#...#...#.
...

user output
0 1 2
0 1 2
0 1 2
0 1 2
0 1 2
...

Test 15

Group: 3

Verdict:

input
956

correct output
....................
.#.##..######..##..#
....##..######..##..
.#...#...#####...#..
.##...#...#####...#.
...

user output
0 1 2
0 1 2
0 1 2
0 1 2
0 1 2
...