| Task: | Robotti |
| Sender: | paju |
| Submission time: | 2024-10-31 13:47:35 +0200 |
| Language: | C++ (C++17) |
| Status: | READY |
| Result: | 0 |
| group | verdict | score |
|---|---|---|
| #1 | RUNTIME ERROR | 0 |
| #2 | RUNTIME ERROR | 0 |
| test | verdict | time | group | |
|---|---|---|---|---|
| #1 | ACCEPTED | 0.00 s | 1, 2 | details |
| #2 | ACCEPTED | 0.00 s | 1, 2 | details |
| #3 | RUNTIME ERROR | 0.00 s | 1, 2 | details |
| #4 | RUNTIME ERROR | 0.00 s | 1, 2 | details |
| #5 | RUNTIME ERROR | 0.00 s | 1, 2 | details |
| #6 | RUNTIME ERROR | 0.00 s | 1, 2 | details |
| #7 | RUNTIME ERROR | 0.00 s | 1, 2 | details |
| #8 | RUNTIME ERROR | 0.00 s | 1, 2 | details |
| #9 | RUNTIME ERROR | 0.00 s | 1, 2 | details |
| #10 | RUNTIME ERROR | 0.00 s | 1, 2 | details |
| #11 | RUNTIME ERROR | 0.00 s | 1, 2 | details |
| #12 | RUNTIME ERROR | 0.00 s | 2 | details |
| #13 | RUNTIME ERROR | 0.00 s | 2 | details |
| #14 | RUNTIME ERROR | 0.00 s | 2 | details |
| #15 | RUNTIME ERROR | 0.00 s | 2 | details |
| #16 | RUNTIME ERROR | 0.01 s | 2 | details |
| #17 | ACCEPTED | 0.01 s | 2 | details |
| #18 | RUNTIME ERROR | 0.01 s | 2 | details |
| #19 | RUNTIME ERROR | 0.02 s | 2 | details |
| #20 | RUNTIME ERROR | 0.02 s | 2 | details |
| #21 | RUNTIME ERROR | 0.01 s | 2 | details |
| #22 | RUNTIME ERROR | 0.01 s | 2 | details |
| #23 | RUNTIME ERROR | 0.03 s | 2 | details |
| #24 | RUNTIME ERROR | 0.02 s | 2 | details |
Compiler report
In file included from /usr/include/x86_64-linux-gnu/c++/11/bits/c++allocator.h:33,
from /usr/include/c++/11/bits/allocator.h:46,
from /usr/include/c++/11/string:41,
from /usr/include/c++/11/bits/locale_classes.h:40,
from /usr/include/c++/11/bits/ios_base.h:41,
from /usr/include/c++/11/ios:42,
from /usr/include/c++/11/ostream:38,
from /usr/include/c++/11/iostream:39,
from input/code.cpp:1:
In member function 'void __gnu_cxx::new_allocator<_Tp>::deallocate(_Tp*, __gnu_cxx::new_allocator<_Tp>::size_type) [with _Tp = std::_List_node<int>]',
inlined from 'static void std::allocator_traits<std::allocator<_CharT> >::deallocate(std::allocator_traits<std::allocator<_CharT> >::allocator_type&, std::allocator_traits<std::allocator<_CharT> >::pointer, std::allocator_traits<std::allocator<_CharT> >::size_type) [with _Tp = std::_List_node<int>]' at /usr/include/...Code
#include <iostream>
#include <list>
#include <string>
using namespace std;
int main()
{
int huoneet;
cin >> huoneet;
string layout;
cin >> layout;
int askeleet = 0;
int kolikot = 0;
int robostart = layout.find("R");
list<int> kolikot1;
list<int> kolikot2;
int lähinkolikko = 0;
int lähinvasen = 0;
int lähinoik = 0;
for (int i = 0; i < robostart; i++)
{
if(layout[i] == '*')
{
kolikot1.push_back(robostart-i);
}
}
for (int i = robostart; i < huoneet; i++)
{
if(layout[i] == '*')
{
kolikot2.push_back(i-robostart);
}
}
if(!kolikot1.empty())
{
lähinvasen = kolikot1.back();
}
if(!kolikot2.empty())
{
lähinoik = kolikot2.front();
}
int robopos = 0;
while (true)
{
if(kolikot1.empty() && kolikot2.empty())
{
break;
}
else if(!kolikot2.empty())
{
lähinkolikko = lähinvasen;
askeleet += lähinkolikko;
kolikot += 1;
kolikot1.pop_back();
robopos -= lähinkolikko;
if(!kolikot1.empty())
{
lähinvasen = kolikot1.back() + robopos;
}
}
else if(!kolikot1.empty())
{
lähinkolikko = lähinoik;
askeleet += lähinkolikko;
kolikot += 1;
kolikot2.pop_front();
robopos += lähinkolikko;
if(!kolikot2.empty())
{
lähinoik = kolikot1.front() - robopos;
}
}
else if(lähinvasen < lähinoik)
{
lähinkolikko = lähinvasen;
kolikot1.pop_back();
askeleet += lähinkolikko;
kolikot += 1;
robopos -= lähinkolikko;
if (!kolikot1.empty())
{
lähinvasen = kolikot1.back() + robopos;
}
if (!kolikot2.empty())
{
lähinoik = kolikot2.front() - robopos;
}
}
else if(lähinvasen > lähinoik)
{
lähinkolikko = lähinoik;
kolikot2.pop_front();
askeleet += lähinkolikko;
kolikot += 1;
robopos += lähinkolikko;
if (!kolikot1.empty())
{
lähinvasen = kolikot1.back() + robopos;
}
if (!kolikot2.empty())
{
lähinoik = kolikot2.front() - robopos;
}
}
else if (lähinvasen == lähinoik)
{
break;
}
}
cout << askeleet << " " << kolikot;
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: RUNTIME ERROR
| input |
|---|
| 10 **.R...*** |
| correct output |
|---|
| 12 5 |
| user output |
|---|
| (empty) |
Error:
double free or corruption (out)
Test 4
Group: 1, 2
Verdict: RUNTIME ERROR
| input |
|---|
| 10 ***R****** |
| correct output |
|---|
| 0 0 |
| user output |
|---|
| (empty) |
Error:
double free or corruption (out)
Test 5
Group: 1, 2
Verdict: RUNTIME ERROR
| input |
|---|
| 1000 R................................ |
| correct output |
|---|
| 947 9 |
| user output |
|---|
| (empty) |
Error:
double free or corruption (out)
Test 6
Group: 1, 2
Verdict: RUNTIME ERROR
| input |
|---|
| 1000 ................................. |
| correct output |
|---|
| 886 9 |
| user output |
|---|
| (empty) |
Error:
double free or corruption (out)
Test 7
Group: 1, 2
Verdict: RUNTIME ERROR
| input |
|---|
| 1000 .....*..*....**..**..*......*.... |
| correct output |
|---|
| 1287 400 |
| user output |
|---|
| (empty) |
Error:
double free or corruption (out)
Test 8
Group: 1, 2
Verdict: RUNTIME ERROR
| input |
|---|
| 1000 ************.*****************... |
| correct output |
|---|
| 0 0 |
| user output |
|---|
| (empty) |
Error:
double free or corruption (out)
Test 9
Group: 1, 2
Verdict: RUNTIME ERROR
| input |
|---|
| 1000 ******************************... |
| correct output |
|---|
| 0 0 |
| user output |
|---|
| (empty) |
Error:
double free or corruption (out)
Test 10
Group: 1, 2
Verdict: RUNTIME ERROR
| input |
|---|
| 1000 R*****************************... |
| correct output |
|---|
| 999 999 |
| user output |
|---|
| (empty) |
Error:
double free or corruption (out)
Test 11
Group: 1, 2
Verdict: RUNTIME ERROR
| input |
|---|
| 1000 ******************************... |
| correct output |
|---|
| 999 999 |
| user output |
|---|
| (empty) |
Error:
double free or corruption (out)
Test 12
Group: 2
Verdict: RUNTIME ERROR
| input |
|---|
| 10000 .......**........*...........*... |
| correct output |
|---|
| 10971 999 |
| user output |
|---|
| (empty) |
Error:
double free or corruption (out)
Test 13
Group: 2
Verdict: RUNTIME ERROR
| input |
|---|
| 10000 *..*....*......*.....*..*........ |
| correct output |
|---|
| 9999 999 |
| user output |
|---|
| (empty) |
Error:
double free or corruption (out)
Test 14
Group: 2
Verdict: RUNTIME ERROR
| input |
|---|
| 10000 *.*.*...**.*...*....**.**.**..... |
| correct output |
|---|
| 18766 5000 |
| user output |
|---|
| (empty) |
Error:
double free or corruption (out)
Test 15
Group: 2
Verdict: RUNTIME ERROR
| input |
|---|
| 10000 R*****************************... |
| correct output |
|---|
| 9999 9999 |
| user output |
|---|
| (empty) |
Error:
double free or corruption (out)
Test 16
Group: 2
Verdict: RUNTIME ERROR
| input |
|---|
| 10000 ******************************... |
| correct output |
|---|
| 9999 9999 |
| user output |
|---|
| (empty) |
Error:
double free or corruption (out)
Test 17
Group: 2
Verdict: ACCEPTED
| input |
|---|
| 200000 ................................. |
| correct output |
|---|
| 0 0 |
| user output |
|---|
| 0 0 |
Test 18
Group: 2
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 ................................. |
| correct output |
|---|
| 299934 10000 |
| user output |
|---|
| (empty) |
Error:
double free or corruption (out)
Test 19
Group: 2
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 **.***....**..**.....***.*..*.... |
| correct output |
|---|
| 299998 100000 |
| user output |
|---|
| (empty) |
Error:
double free or corruption (out)
Test 20
Group: 2
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 ******************************... |
| correct output |
|---|
| 0 0 |
| user output |
|---|
| (empty) |
Error:
double free or corruption (out)
Test 21
Group: 2
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 R................................ |
| correct output |
|---|
| 133765 3 |
| user output |
|---|
| (empty) |
Error:
double free or corruption (out)
Test 22
Group: 2
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 R................................ |
| correct output |
|---|
| 199982 5000 |
| user output |
|---|
| (empty) |
Error:
double free or corruption (out)
Test 23
Group: 2
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 R*****************************... |
| correct output |
|---|
| 199999 199999 |
| user output |
|---|
| (empty) |
Error:
double free or corruption (out)
Test 24
Group: 2
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 ******************************... |
| correct output |
|---|
| 199999 199999 |
| user output |
|---|
| (empty) |
Error:
double free or corruption (out)
