18 1
1 2
2 3
3 3
3 2
2 4
4 5
5 6
6 5
5 7
7 8
8 9
9 10
10 11
11 12
12 2
2 1
1 2
2 1
Odpowiedź brzmi NIE ??
#include <stdio.h>
int main()
{
int p, t, k;
long long x, y;
bool test = true;
scanf("%d %d", &t, &p);
long long int tab[t][2];
for(int i =0; i<t; i++)
{
scanf("%lld %lld", &x, &y);
tab[i][0]=x;
tab[i][1]=y;
if(test == true)
{
if(i == 0)
{
if(x != p)
{
test = false;
}
}
if(i != 0)
{
if(x != k)
{
test = false;
}
}
k=y;
}
}
if( y != p)
test = false;
if(test==true)
{
for(int i =0; i<t; i++)
{
for(int j=0; j<t; j++)
{
if(i!=j)
{
if((tab[i][0] == tab[j][0]) && (tab[i][1] == tab[j][1]))
{
test=false;
break;
}
}
}
if(test==false)
break;
}
}
if(test == true)
printf("TAK");
else
printf("NIE");
return 0;
}
Mam coś takiego. Nie wiem co może być jeszcze źle
Co do testu - odpowiedzią jest "TAK".
Co do programu - masz błędny algorytm.
Zastanów się nad czymś takim: Jeśli, którąś ulicą dojdzie się do danego skrzyżowania, to jakąś inną trzeba z niego wyjść. Czyż nie?
A może próbowałeś kiedyś rysować pewne figury "jednym pociągnięciem ołówka"? Które figury da się tak narysować?
A tak w ogóle, to przeczytaj cały ten wątek, bo znajdziesz tu dużą podpowiedź.
Patrz co do tego testu.
"Denerwuje go to, że czasami musi przejeżdżać dwa razy jakąś ulicę lub jej fragment."
czyli odpowiedź brzmi Nie dal tego testu.
A co do twojego pytania. Tak da się tylko koło tak narysować.
A co do tego programu nie mam zastrzeżeń tylko czegoś mu jeszcze brakuje tylko nie wiem czego.
#include <stdio.h>
int main()
{
int p, t, k;
long long x, y;
bool test = true;
scanf("%d %d", &t, &p);
for(int i =0; i<t; i++)
{
scanf("%lld %lld", &x, &y);
if(test == true)
{
if(i == 0)
{
if(x != p)
{
test = false;
}
}
if(i != 0)
{
if(x != k)
{
test = false;
}
}
k=y;
}
}
if( y != p)
test = false;
if(test == true)
printf("TAK");
else
printf("NIE");
return 0;
}
Coś mi zaświtało
patrz:
Zdjęcia2
zielony wejście
czerwony drugi test
czarny pierwszy test
purpurowy numery ulic
Czyli oba test są poprawne gdyż. Poczta leży przy ul o numerze 4. Więc zaczynając w zgodnie z ruchem wskazówek zegara czy przeciwnie, otrzymam tą sama trasę. Czy dobrze to rozumiem?
Oczywiście, że oba testy są poprawne, ale czytając Twój wpis naszła mnie wątpliwość, czy dobrze rozumiesz, jak w danych wejściowych określa się położenie poczty.
Liczba określa numer ulicy przy której znajduje się poczta, a nie skrzyżowania.
A co do tych figur, to poszukaj sobie w necie czegoś o figurach unikursalnych.
I'm having a similar problem and submitted following solution. When I ran it on http://ideone.com/22 it worked fine but still SPOJ saying it as wrong answer
Please correct me if anything wrong in my solution.
compiled with C++ 5.1
int main() {
int i;
std::cout<<"Enter your input number (42 is for exit)"<<endl;
do
{
std::cin>>i;
if( std::cin.fail() )
{
std::cout<<"Wrong input, numeric numbers only accepts"<<endl;
}
else
{
std::cout<<i<<endl;
}
}while(42 != i);
std::cout<<"Successfully exiting"<<endl;
return 0;
}
include
using namespace std;
int main()
{
int a;
while(1)
{
cin >>a;
if(a==42)
break;
else
cout <}
}
Hi, you are using else. You're supose to stop the outstream after reading numer 42.
Second is that can see cout<, that is probably why.
Good luck.
P.S. There's a good answer with the code above.
Simple solution in C++
include
include
using namespace std;
int main(){
int a[1000];
for(int i=0;i<1000;i++){
cin>>a[i];
}
for(int i=0;i<1000;i++){
if(a[i]!=42)
cout< else
break;
}
return 0;
}
My solution doesn't pass your tests. It compiles on my local system and seems to satisfy the requirements. I am using mingw492_32 compiler on my computer.
Question: How do I wrap this in a code block where it picks up my includes and angle brackets accurately?
(pound symbol)include < iostream>
(pound symbol)include < list>
using namespace std;
int main(void) {
int val;
list< int> array;
cout << "Input:" << endl;
while (true) {
cin >> val;
if (val > 99 || val < -99)
continue;
if (val == 42)
break;
array.push_back(val);
}
cout << "\n\nOutput:" << endl;
for (list<int>::iterator iter = array.begin(); iter != array.end(); iter++)
cout << *iter << endl;
return 0;
}
Please keep in mind that this is my first day working with c++ (or any language). Having only a limited knowledge of using the iostream header, this is what I came up with:
#include <iostream>
using namespace std;
int main()
{
int a;
cin >> a;
while (a != 42)
{
cout << a << endl;
cin >> a;
}
return 0;
}