| Task: | Kayaks |
| Sender: | Przemyslaw Uznanski |
| Submission time: | 2015-09-09 16:47:14 +0300 |
| Language: | C++ |
| Status: | READY |
| Result: | ACCEPTED |
| test | verdict | time | |
|---|---|---|---|
| #1 | ACCEPTED | 0.05 s | details |
| #2 | ACCEPTED | 0.06 s | details |
| #3 | ACCEPTED | 0.06 s | details |
| #4 | ACCEPTED | 0.05 s | details |
| #5 | ACCEPTED | 0.06 s | details |
| #6 | ACCEPTED | 0.05 s | details |
| #7 | ACCEPTED | 0.06 s | details |
| #8 | ACCEPTED | 0.06 s | details |
| #9 | ACCEPTED | 0.04 s | details |
| #10 | ACCEPTED | 0.06 s | details |
| #11 | ACCEPTED | 0.05 s | details |
| #12 | ACCEPTED | 0.05 s | details |
Code
#include <cstdio>
#include <queue>
#include <algorithm>
#include <iostream>
#include <string>
#define all(x) (x).begin(),x.end()
#define mp make_pair
using namespace std;
int main()
{
int n,m;
cin >> n >> m;
vector<string> inp(n);
for(int i=0;i<n;i++)
cin >> inp[i];
vector<int> pos(9);
vector<int> dist(9);
for(int i=0;i<n;i++)
for(int j=0;j<m;j++)
{
char c = inp[i][j];
if(c >= '1' && c <= '9')
dist[c-'1'] = m-j;
}
vector<pair<int,int> > dd(9);
for(int i=0;i<9;i++)
dd[i] = mp(dist[i],i);
sort(all(dd));
int p=1;
pos[dd[0].second] = p;
for(int i=1;i<9;i++)
{
if(dd[i].first != dd[i-1].first)
p++;
pos[dd[i].second] = p;
}
for(int i=0;i<9;i++)
cout << pos[i] << endl;
}
Test details
Test 1
Verdict: ACCEPTED
| input |
|---|
| 10 15
S..........222F S.....111.....F S...333.......F S...555.......F ... |
| correct output |
|---|
| 5
1 6 3 6 ... |
| user output |
|---|
| 5 1 6 3 6 ... |
Test 2
Verdict: ACCEPTED
| input |
|---|
| 10 10
S.....111F S....222.F S...333..F S..444...F ... |
| correct output |
|---|
| 1
2 3 4 5 ... |
| user output |
|---|
| 1 2 3 4 5 ... |
Test 3
Verdict: ACCEPTED
| input |
|---|
| 10 10
S...111..F S....222.F S.....333F S444.....F ... |
| correct output |
|---|
| 3
2 1 6 5 ... |
| user output |
|---|
| 3 2 1 6 5 ... |
Test 4
Verdict: ACCEPTED
| input |
|---|
| 10 20
S..................F S...111............F S......222.........F S.........333......F ... |
| correct output |
|---|
| 9
7 5 3 1 ... |
| user output |
|---|
| 9 7 5 3 1 ... |
Test 5
Verdict: ACCEPTED
| input |
|---|
| 20 20
S999...............F S..................F S..................F S..................F ... |
| correct output |
|---|
| 5
3 7 6 4 ... |
| user output |
|---|
| 5 3 7 6 4 ... |
Test 6
Verdict: ACCEPTED
| input |
|---|
| 30 30
S............................F... |
| correct output |
|---|
| 1
6 5 4 3 ... |
| user output |
|---|
| 1 6 5 4 3 ... |
Test 7
Verdict: ACCEPTED
| input |
|---|
| 30 30
S111.........................F... |
| correct output |
|---|
| 1
1 1 1 1 ... |
| user output |
|---|
| 1 1 1 1 1 ... |
Test 8
Verdict: ACCEPTED
| input |
|---|
| 30 30
S111.........................F... |
| correct output |
|---|
| 7
6 5 3 2 ... |
| user output |
|---|
| 7 6 5 3 2 ... |
Test 9
Verdict: ACCEPTED
| input |
|---|
| 30 30
S............................F... |
| correct output |
|---|
| 1
1 1 1 3 ... |
| user output |
|---|
| 1 1 1 1 3 ... |
Test 10
Verdict: ACCEPTED
| input |
|---|
| 30 30
S............................F... |
| correct output |
|---|
| 5
3 3 3 1 ... |
| user output |
|---|
| 5 3 3 3 1 ... |
Test 11
Verdict: ACCEPTED
| input |
|---|
| 30 30
S............................F... |
| correct output |
|---|
| 6
5 3 5 4 ... |
| user output |
|---|
| 6 5 3 5 4 ... |
Test 12
Verdict: ACCEPTED
| input |
|---|
| 30 30
S............................F... |
| correct output |
|---|
| 5
4 3 1 2 ... |
| user output |
|---|
| 5 4 3 1 2 ... |
