| Task: | Robotti |
| Sender: | qhuge |
| Submission time: | 2024-10-30 22:12:30 +0200 |
| Language: | C++ (C++20) |
| Status: | READY |
| Result: | 0 |
| group | verdict | score |
|---|---|---|
| #1 | WRONG ANSWER | 0 |
| #2 | WRONG ANSWER | 0 |
| test | verdict | time | group | |
|---|---|---|---|---|
| #1 | ACCEPTED | 0.00 s | 1, 2 | details |
| #2 | ACCEPTED | 0.00 s | 1, 2 | details |
| #3 | ACCEPTED | 0.00 s | 1, 2 | details |
| #4 | ACCEPTED | 0.00 s | 1, 2 | details |
| #5 | ACCEPTED | 0.00 s | 1, 2 | details |
| #6 | ACCEPTED | 0.00 s | 1, 2 | details |
| #7 | ACCEPTED | 0.01 s | 1, 2 | details |
| #8 | ACCEPTED | 0.00 s | 1, 2 | details |
| #9 | ACCEPTED | 0.00 s | 1, 2 | details |
| #10 | WRONG ANSWER | 0.01 s | 1, 2 | details |
| #11 | RUNTIME ERROR | 0.01 s | 1, 2 | details |
| #12 | ACCEPTED | 0.01 s | 2 | details |
| #13 | ACCEPTED | 0.01 s | 2 | details |
| #14 | RUNTIME ERROR | 0.22 s | 2 | details |
| #15 | WRONG ANSWER | 0.89 s | 2 | details |
| #16 | RUNTIME ERROR | 0.63 s | 2 | details |
| #17 | ACCEPTED | 0.01 s | 2 | details |
| #18 | ACCEPTED | 0.73 s | 2 | details |
| #19 | TIME LIMIT EXCEEDED | -- | 2 | details |
| #20 | ACCEPTED | 0.03 s | 2 | details |
| #21 | ACCEPTED | 0.01 s | 2 | details |
| #22 | ACCEPTED | 0.21 s | 2 | details |
| #23 | TIME LIMIT EXCEEDED | -- | 2 | details |
| #24 | TIME LIMIT EXCEEDED | -- | 2 | details |
Compiler report
input/code.cpp: In function 'int etsi(std::vector<std::__cxx11::basic_string<char> >, int)':
input/code.cpp:15:31: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::__cxx11::basic_string<char> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
15 | } else if (robottiIndeksi == (kolikotX.size() - 1)){
| ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
input/code.cpp: In function 'int main()':
input/code.cpp:42:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
42 | for (int i = 0; i < map.size(); i++) {
| ~~^~~~~~~~~~~~Code
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
int robottiIndeksi;
int etsi(vector<string> kolikotX, int robottiX){
if (kolikotX.size() <= 1){
return 0;
} else if (robottiIndeksi == 0){
return stoi(kolikotX[1]) - robottiX;
} else if (robottiIndeksi == (kolikotX.size() - 1)){
robottiIndeksi--;
return stoi(kolikotX[kolikotX.size() - 2]) - robottiX;
}
int oik = abs(stoi(kolikotX[robottiIndeksi + 1]) - robottiX);
int vas = abs(stoi(kolikotX[robottiIndeksi - 1]) - robottiX);
if (oik < vas) {
return oik;
} else if (vas < oik) {
robottiIndeksi--;
return -vas;
} else {
return 0;
}
}
int main() {
int n;
cin >> n;
string map;
cin >> map;
vector<string> kolikotX;
int robottiX = 0;
for (int i = 0; i < map.size(); i++) {
if (map[i] == '*'){
kolikotX.push_back(to_string(i));
continue;
} else if (map[i] == 'R'){
robottiX = i;
kolikotX.push_back(to_string(map[i]));
robottiIndeksi = kolikotX.size() - 1;
}
}
int askelia = 0;
int kolikoita = 0;
while (true){
int et = etsi(kolikotX, robottiX);
if (et == 0){
break;
}
askelia = askelia + abs(et);
robottiX = robottiX + et;
kolikoita++;
kolikotX.erase(remove(kolikotX.begin(), kolikotX.end(), to_string(robottiX)), kolikotX.end());
//cout << kolikotX << endl;
if (kolikotX.size() == 0) {
break;
}
}
cout << askelia << " " << kolikoita << "\n";
return 0;
}
Test details
Test 1
Group: 1, 2
Verdict: ACCEPTED
| input |
|---|
| 1 R |
| correct output |
|---|
| 0 0 |
| user output |
|---|
| 0 0 |
Test 2
Group: 1, 2
Verdict: ACCEPTED
| input |
|---|
| 10 ...R...... |
| correct output |
|---|
| 0 0 |
| user output |
|---|
| 0 0 |
Test 3
Group: 1, 2
Verdict: ACCEPTED
| input |
|---|
| 10 **.R...*** |
| correct output |
|---|
| 12 5 |
| user output |
|---|
| 12 5 |
Test 4
Group: 1, 2
Verdict: ACCEPTED
| input |
|---|
| 10 ***R****** |
| correct output |
|---|
| 0 0 |
| user output |
|---|
| 0 0 |
Test 5
Group: 1, 2
Verdict: ACCEPTED
| input |
|---|
| 1000 R................................ |
| correct output |
|---|
| 947 9 |
| user output |
|---|
| 947 9 |
Test 6
Group: 1, 2
Verdict: ACCEPTED
| input |
|---|
| 1000 ................................. |
| correct output |
|---|
| 886 9 |
| user output |
|---|
| 886 9 |
Test 7
Group: 1, 2
Verdict: ACCEPTED
| input |
|---|
| 1000 .....*..*....**..**..*......*.... |
| correct output |
|---|
| 1287 400 |
| user output |
|---|
| 1287 400 |
Test 8
Group: 1, 2
Verdict: ACCEPTED
| input |
|---|
| 1000 ************.*****************... |
| correct output |
|---|
| 0 0 |
| user output |
|---|
| 0 0 |
Test 9
Group: 1, 2
Verdict: ACCEPTED
| input |
|---|
| 1000 ******************************... |
| correct output |
|---|
| 0 0 |
| user output |
|---|
| 0 0 |
Test 10
Group: 1, 2
Verdict: WRONG ANSWER
| input |
|---|
| 1000 R*****************************... |
| correct output |
|---|
| 999 999 |
| user output |
|---|
| 999 998 |
Test 11
Group: 1, 2
Verdict: RUNTIME ERROR
| input |
|---|
| 1000 ******************************... |
| correct output |
|---|
| 999 999 |
| user output |
|---|
| (empty) |
Test 12
Group: 2
Verdict: ACCEPTED
| input |
|---|
| 10000 .......**........*...........*... |
| correct output |
|---|
| 10971 999 |
| user output |
|---|
| 10971 999 |
Test 13
Group: 2
Verdict: ACCEPTED
| input |
|---|
| 10000 *..*....*......*.....*..*........ |
| correct output |
|---|
| 9999 999 |
| user output |
|---|
| 9999 999 |
Test 14
Group: 2
Verdict: RUNTIME ERROR
| input |
|---|
| 10000 *.*.*...**.*...*....**.**.**..... |
| correct output |
|---|
| 18766 5000 |
| user output |
|---|
| (empty) |
Test 15
Group: 2
Verdict: WRONG ANSWER
| input |
|---|
| 10000 R*****************************... |
| correct output |
|---|
| 9999 9999 |
| user output |
|---|
| 9999 9998 |
Test 16
Group: 2
Verdict: RUNTIME ERROR
| input |
|---|
| 10000 ******************************... |
| correct output |
|---|
| 9999 9999 |
| user output |
|---|
| (empty) |
Test 17
Group: 2
Verdict: ACCEPTED
| input |
|---|
| 200000 ................................. |
| correct output |
|---|
| 0 0 |
| user output |
|---|
| 0 0 |
Test 18
Group: 2
Verdict: ACCEPTED
| input |
|---|
| 200000 ................................. |
| correct output |
|---|
| 299934 10000 |
| user output |
|---|
| 299934 10000 |
Test 19
Group: 2
Verdict: TIME LIMIT EXCEEDED
| input |
|---|
| 200000 **.***....**..**.....***.*..*.... |
| correct output |
|---|
| 299998 100000 |
| user output |
|---|
| (empty) |
Test 20
Group: 2
Verdict: ACCEPTED
| input |
|---|
| 200000 ******************************... |
| correct output |
|---|
| 0 0 |
| user output |
|---|
| 0 0 |
Test 21
Group: 2
Verdict: ACCEPTED
| input |
|---|
| 200000 R................................ |
| correct output |
|---|
| 133765 3 |
| user output |
|---|
| 133765 3 |
Test 22
Group: 2
Verdict: ACCEPTED
| input |
|---|
| 200000 R................................ |
| correct output |
|---|
| 199982 5000 |
| user output |
|---|
| 199982 5000 |
Test 23
Group: 2
Verdict: TIME LIMIT EXCEEDED
| input |
|---|
| 200000 R*****************************... |
| correct output |
|---|
| 199999 199999 |
| user output |
|---|
| (empty) |
Test 24
Group: 2
Verdict: TIME LIMIT EXCEEDED
| input |
|---|
| 200000 ******************************... |
| correct output |
|---|
| 199999 199999 |
| user output |
|---|
| (empty) |
