16 / 47
Aug 2007

I don't really know Python, but I believe I know what's the problem:
For s.split() whitespaces don't seem to matter indeed, but newline chars do matter for raw_input().
Your raw_input() reads only the first number from input data and it causes the program to crash.

well, guys. This is one of the greatest lols I ever met.

count=input()
for i in xrange(count): 
    next=input()
    j=1; q=1 
    while j<next: 
        j+=1; q=q*j 
    print q,'asdfgh'

Now I put values in one by one and pressing [Enter]:

3
5
120 asdfgh
6
720 asdfgh
7
5040 asdfgh
33
33

"For" cycle is executed only 3 times and that's ok. But why Py shell
then waits for one more input value (33) and then echoes it without
asking and only after that it terminates the code execution...
it's above my head (maybe irreversibly damaged by VB).

[quote="ZZZ"]

(snipped)

[/quote]
Well, this code does work, when you put an EOF at end of the list.
I got AC with it (without "as...", of course), see solution 8363.

2 years later
10 days later

Hmm tez mam problem, tzn ja dostaje WA, ma ktoś może jakieś wredne testy, bo szczerze to nie wiem co może być nie tak...

t to zapewne liczba testów a n liczba liczb w tescie
nie jest to jednak podane w tresci zadania

P.S mój AC ma t i n <= 2^31

Właśnie męczę się z tym zadaniem, ale cały czas mam TLE.
Czy mógłby ktoś mi powiedzieć co w moim rozwiązaniu jest nie tak?

#include<stdio.h>
#include<list>
#include<queue>
#include<stack>
#define MAXN 1002
using namespace std;
class Graf{
      private:
         int n,nrGrafu;
         bool odwiedzony[MAXN];
         list<int> graf[MAXN];
         queue<int> kol;
         void DFS(int start);
         void BFS(int start);
      public:
         Graf(int nr);
         void obsluz();    
      };
Graf::Graf(int nr){
    nrGrafu=nr;           
    scanf("%d", &n);
    for(int i=1; i<=n; i++){
            int m,o,t;
            scanf("%d %d",&o,&m);
             for(int j=0;j<m;j++)  
                    {
                    scanf("%d",&t);
                    graf[o].push_back(t);            
                    };
            };    
     };
 void Graf::obsluz(){
       printf("graph %d\n", nrGrafu);      
       while(1){
                int typ, sta;
                scanf("%d %d",&sta, &typ);
                if( sta == 0) break; 
                for(int i=0; i<=n; i++) odwiedzony[i]=false;
                if (typ==0)  DFS(sta);
                if (typ==1)  BFS(sta);
                printf("\n");  
       };  
      };
void Graf::DFS(int i)
{
odwiedzony[i]=true;
printf("%d ",i);
for(list<int>::iterator k=graf[i].begin(); k!=graf[i].end();k++)
		if(odwiedzony[*k]==false) DFS(*k);
};
void Graf::BFS(int start){
    kol.push(start);
    bool odwiedzony[n+1];
    for(int i=0; i<=n; i++) odwiedzony[i]=false;
    odwiedzony[start]=true;
    while(!kol.empty()){
    printf("%d ", kol.front());
    list<int>::iterator i;
    for(i=graf[kol.front()].begin(); i != graf[kol.front()].end(); ++i){ 
                                     if(!odwiedzony[*i]) kol.push(*i);
                                      odwiedzony[*i]=true; };
    kol.pop();
    };
};
int main(){
int d;
scanf("%d", &d);
for(int nrGr=1;nrGr<=d;nrGr++){
        Graf grafik(nrGr);
        grafik.obsluz();
       };
return 0;  
};
1 year later

No ale skąd ty bierzesz zmienną "t" ? Przecież w tym zadaniu nie ma na początku liczby oznaczającej ilość zestawów danych.

2 months later

takie rozwiązanie powinno przejść. tylko nie podoba mi się ta pętla

while(1)
{...}

czy Ci to zawsze działało jeśli ilość danych wejściowych była nieokreślona?
i po co dwa razy w pętli cin.eof()?

2 months later

Cześć. Ponieważ mam pytanie nt. tego samego zadania to podepnę się do tego wątku. Otóż, kiedy próbowałem wysłać rozwiązanie ( pl.spoj.pl/submit/ROWNANIE/) otrzymałem informację:
Wystąpił błąd
Wrong problem!

Czy chodzi o to, że nie można już wysyłać rozwiązań? Nie mogę znaleźć nic na ten temat w FAQ więc liczę, że ktoś po prostu spotkał się z taką sytuacją.

rowniez napotkalem ten problem przy probie wyslania. ale mysle ze jest to spowodowane tym ze to zadanie nie znajduje sie na liscie zadan w kontescie(przejzyj liste latwych zadan i tam go nie ma).

podobny problem wystepuje przy zadaniu :
1035. Test 3
Kod zadania: PP0601A2

18 days later

pomógł mi ten wątek, wywaliłam się naprawdę na głupich błędach wink
wystarczyło, jak zmieniłam typy danych na unsigned long int i unsigned long long int.

**********
dla testu:
**********
7
9
432 12 543 5343 7862 234557 67 234 546
5
1000000 10000000 100000 1000003 1011111
17
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
5
12345 76543 97643 34235 683243
8
26345982 234756289 23654726354 95869847 234527346 46459867 2364527364 9536845867
3
2368457236485 364857636457 2346572364572344
9
1523 2134 345 657 4356 7958 2345 587 3245
**********
odpowiedź:
**********
4881123190683544848
10111140333330000000
12252240
14657352316696420337
18080302788431356660
12334572626437093208
15552605414187387324

Co zrobić, żeby dostać 15 pkt. ? confused
[bbone=cpp,2723]#include

using namespace std;

int main()
{
int r1, r2;

int t;
cin >> t;
while (t--)
{
    cin >> r1 >> r2;

    while (r1!=r2)
    {
        r1 > r2 ? r1-=r2 : r2-=r1;
    }
    cout << r1+r2 << endl;
}

}[/bbone]

a zastanów się nad przykładem: gry jeden z graczy ma 1 żeton a drugi 1 000 000 000...

1 month later

Nie wiem, czy to błąd, czy ktoś celowo to skasował, ale podobna sytuacja jest z zadaniem: 1033. Test 2
Kod zadania: PP0601A. Pół roku temu robiłem to zadanie i coś mi nie wychodziło, teraz znalazłem błąd w moim rozumowaniu, chcę wysyłać, a tu... Wrong answer! confused

1 month later

Ja mam spory problem. Ten program jest zdecydowanie najbardziej skomplikowanym programem, jaki do tej pory napisałem (dopiero zaczynam programować), więc byłbym bardzo szczęśliwy, jeżeliby mi przeszło jego rozwiązanie. W domu wszystko mi działa bez problemu (używam Dev C++), jednak kiedy wysyłam rozwiązanie na serwer, to wyskakuje mi błąd SIGFPE.
Czy ktoś mógłby mi wskazać błąd w moim programie?

#include <iostream>
using namespace std;
int nwd(int a, int b)
{
    while(a>0 && b>0)
    {
            a=a%b;
            if(a==0)
            {
                   break;
            }
            b=b%a;
    }
    return a+b;
}
int nww(int a, int b)
{
    return a*b/nwd(a, b);
}
int main()
{
    int n, a, i, b;
    cin>>n;
    unsigned long long int nwww[n];
    b=n;
    while(b)
    {
            cin>>a;
            unsigned long long int tab[a];
            i=a;
            while(i)
            {
                    cin>>tab[i-1];
                    i--;
            }
            while(a>1)
            {
                      tab[a-2]=nww(tab[a-2], tab[a-1]);
                      a--;
            }
            nwww[b-1]=tab[0];
            b--;
    }
    while(n)
    {
            cout<<nwww[n-1]<<endl;
            n--;
    }
system("pause");
return 0;
}