TOPIC

PROBLEM 1536 - URI Fórum 1.0

beecrowd asked 9 years ago

URI Online Judge Fórum 1.0

MOD

This topic was solved and cannot recieve new replies.

  • ltk100 replied 7 years ago

    Tem um erro no enunciado:

    Mas na verdade pode haver: M=0 --> M(0 ≤ M ≤ 100) e V=0 --> V(0 ≤ V ≤ 100)

  • Abhishek8 replied 8 years ago

    #include <iostream>
    
    using namespace std;
    
    int main()
    {
        short score[4];
        short n;
    
        cin>>n;
        bool *flag = new bool[n];
    
        while(n>0)
        {
            for(short j=0;j<4;j+=2)
            {
                cin >> score[j];
                getchar();
                cin >> score[j+1];
            }
    
            if((score[0] + score[3]) > (score[1] + score[2]))
                cout << "Time 1" << endl; 
            else if((score[0] + score[3]) < (score[1] + score[2]))
                cout << "Time 2" << endl;
            else if((score[0] == score[1] == score[2] == score[3])) 
                cout << "Penaltis" << endl;
            else if((score[0] == score[1]) && (score[2] == score[3]))
            {
                if((score[0] + score[1] + score[2] + score[3]) > 0)
                    cout << "Time 1" << endl;   
                else
                    cout << "Penaltis" << endl;
            }
    
            n--;
        }
    
        return 0;
    }

    WA 60%. Please help...

  • galamiro replied 8 years ago

    Estou recebendo W.A 10% alguém sabe o que é?

    #include <bits/stdc++.h>
    
    using namespace std;
    
    int main(){
    
        int a=0, b, c[2], d[2], ctot, dtot;
        char f[2];
    
     cin >> b;
        while(a<b){
         ctot=0;
         dtot=0;
         cin>> c[0] >> f[0] >> d[0];
         cin>> d[1] >> f[0] >> c[1];
    
         ctot=c[0]+c[1];
         dtot=d[0]+d[1];
    
          if(ctot>dtot || d[0]<c[1]){
            cout<< "Time 1"<<endl;
          }
          else if(ctot<dtot || d[0]>c[1]){
            cout<< "Time 2"<<endl;
          }
          else{
             cout << "Penaltis"<<endl;
          }
         a++;
        }
       return 0;
    }
  • mrfernandes replied 8 years ago

    Alguém pode me dar uma ajuda? O código retorna a resposta certa, mas estou recebendo Wrong Answer 60%. :\

    #include <iostream>
    
    using namespace std;
    
    int main(){
        int N = 0, i = 0, ga1 = 0, gb2 = 0, gb1 = 0, ga2 = 0, g1 = 0, g2 = 0;
    
        cin >> N;
    
        do{
            cin >> ga1 >> gb2;
            cin >> gb1 >> ga2;
            g1 = ga1 + ga2;
            g2 = gb1 + gb2;
            if(g1 == g2){
                if(ga2 == gb2){
                    cout << "Penaltis" << endl;
                }
                else if(ga2 > gb2){
                    cout << "Time 1" << endl;
                }
                else if(gb2 > ga2){
                    cout << "Time 2" << endl;
                }
            }
            else{
                if(g2 > g1){
                    cout << "Time 2" << endl;
                }
                else if(g1 > g2){
                    cout << "Time 1" << endl;
                }
            }
    
            i++;
        }while(i < N);
    }
  • sdspessoa replied 8 years ago

    WA 20%, pq?

    int n, m, v, i, cont1 = 0, cont2 = 0, time1, time2;
    
    scanf ("%d", &n);
    
    for ( i = 1; i <= (2*n); i++ ){
    
        time1 = 0, time2  = 0;
    
        scanf ("%d x %d", &m, &v);
    
        if ( i%2 == 0 ){
            time1 = cont1 + v;
            time2 = cont2 + m;
    
            if ( time1 > time2  || time1 == time2 && v > cont1){
                printf ("Time 1\n");
            }
            else if ( time2 > time1 || time1 == time2  && cont2 > m){
                printf ("Time 2\n");
            }
            else{
                printf ("Penaltis\n");
            }
    
            cont1 = 0, cont2  = 0;
    
        }
        else{
            cont1 += m, cont2 += v;
        }
    
    }
  • ibaruffi replied 8 years ago

    O que está errado neste diabo!? 20 ERRO!

    #include <bits/stdc++.h>
    using namespace std;
    int main() {
    bool time1, time2;
    int leitura;
    int maiorA, maiorB,menorA,menorB,a,b,gols1,gols2;
    char x[1];                                 
    scanf("%d", &leitura);
    for (int i =0; i<leitura; i++){
        maiorA=0;
        maiorB=0;
        menorA=0;
        menorB=0;
        a=0;b=0;
        gols1=0;gols2=0;
        time1=false;
        time2=false;
    
            scanf("%d %c %d", &gols1, &x, &gols2); 
            if (gols1>gols2){ 
               time1=true; 
                maiorA=gols1; //aa
                menorB=gols2; //aa
            } 
            if (gols2>gols1) {
                time2=true; 
               maiorB=gols2; //aa
               menorA=gols1; //aa
            }       
            a=gols1+gols2;
    
            scanf("%d %c %d", &gols2, &x, &gols1);  
            if (gols2>gols1) {
                time2=true; 
                maiorB=gols2; //aa
                menorA=gols1; //aa
            }
            if (gols1>gols2){
                time1=true; 
                maiorA=gols1; //aa
                menorB=gols2; //aa      
            }
            b=gols1+gols2;
    
        /*printf("MaiorA %d MaiorB %d\n",maiorA, maiorB);
        printf("MenorA %d MenorB %d\n",menorA, menorB);
        printf("Total A %d Total B %d\n", a,b);*/
    
            for (int j=0; j<1; j++){
                if (time1==true && time2!=true){
                    printf("Time 1\n");
                    break;
                }
                if (time1!=true && time2==true){
                    printf("Time 2\n");
                    break;
                } 
                if ((maiorA>=maiorB && menorA>=menorB && a<=b) ){
                    if ((maiorA==maiorB) && (menorA==menorB )&& (a==b)) printf("Penaltis\n");else printf("Time 1\n"); 
                }
                else{
                    if ((maiorA==maiorB) && (menorA==menorB )&& (a==b)){
                    printf("Penaltis\n");
                    }else{
                        printf("Time 2\n");     
                    }           
                }
            }
    }
    return 0;
    }
  • ghmdsilva replied 9 years ago

    Alguém tem alguma dica? Lutei até onde pude e continua dando 10% de erro

    #include <stdio.h>
    int main() {
     int casos, contcasos, plac11, plac12, plac21, plac22, tim1, tim2, saldo1, saldo2;
        plac11 = 0;
        plac12 = 0;
        plac21 = 0;
        plac22 = 0;
        tim1 = 0;
        tim2 = 0;
        //n = 0;
        contcasos = 0;
        scanf("%d", &casos);
        for (contcasos = 0; contcasos < casos; contcasos++)//while (contcasos < casos)
        {
            //Define times vencedores da primeira partida
            //primeira partida
        scanf("%i X %i", &plac11, &plac12);
        scanf("&i X %i", &plac22, &plac21);
           if (plac11 > plac12)
            {
                tim1 += 3;
            }
            else if (plac12 > plac11)
            {
                tim2 += 3;
            }
            else if (plac11 == plac12)
            {
                tim1++;
                tim2++;
            }
            //segunda partida
            if (plac21 > plac22)
            {
                tim1 += 3;
            }
            else if (plac22 < plac21)
            {
                tim1 += 3;
            }
            else if (plac21 == plac22)
            {
                tim1++;
                tim2++;
            }
                    //  contcasos++;
        }
        if (tim1 > tim2)
        {
            printf("Time1\n");
        }
        else if (tim2 > tim1)
        {
            printf("Time2\n");
        }
        else if (tim1 == tim2)
        {
            saldo1 = plac11 + plac21;
            saldo2 = plac12 + plac22;
            if (saldo1 > saldo2)
            {
                printf("Time1\n");
            }
            else if (saldo2 > saldo1)
            {
                printf("Time2\n");
            }
            //analisa por numero de gols feitos na casa do adversário
            else if (plac21 > plac12)
            {
                printf("Time1\n");
            }
            else if (plac12 > plac21)
            {
                printf("Time2\n");
            }
            //impossivel definir resultados
            else if (plac11 == plac12 && plac21 == plac22)
            {
                printf("Penaltis\n");
            }
        }
        return 0;
    }
  • oman10 replied 9 years ago

    flw. Att. Leoci Melo.

  • aluiz1 replied 9 years ago

    Ahhh ok ....vlw leocij...agora deu accepted =)

  • oman10 replied 9 years ago

    M-Time1 x V-Time2 1 x 1 M-Time2 x V-Time1 2 x 2 Acima deu empate.

    Critério 2 = mais gols marcados na casa do adver.(CA). M-Time1 x V-Time2 1 x 1(CA) M-Time2 x V-Time1 2 x 2(CA)

    Conclusão: Time1 fez 2 gols na CA->Casa do Adversário. Time2 fez 1 gol na CA->Casa do Adversário.

    Então, parabéns ao Time1 que foi o vencedor desse mata-mata. hehehehe.

    Espero ter esclarecido a sua dúvida. Att. Leoci Melo.

  • aluiz1 replied 9 years ago

    Uma duvida nessa caso do exemplo....

    1 x 1 2 x 2

    Bora lá,como houve empate em ambos os jogos,então o saldo final de pontos ai seria time1 = 2 e time2 = 2...Aí partiriamos para as criteria....

    1) goal difference (number of goals for minus the number of goals against)

    Seria a diferenca final entre os gols feitos e os sofridos,certo? tipo time1 fez 3 gols no total e time2 fez 3 tb e ambos sofreram 3 gols tb? oq daria um empate nessa criteria tb....

    2) most goals scored in the away match and...

    total de gols feitos na ultima partida? tipo cada um fez 2,oq tb daria empate nessa criteria...ai so sobraria "Penaltis" como alternativa,mas a resposta é "Time 1"...clarify me please

  • oman10 replied 9 years ago

    Você testou com a saída do uri?

    4
    1 x 1
    2 x 1
    2 x 0
    2 x 1
    1 x 1
    2 x 2
    3 x 1
    3 x 1

    Aqui gerou essa saída:

    Time 2
    Time 2
    Time 2
    Time 2

    E o certo seria:

    Time 2
    Time 1
    Time 1
    Penaltis

    Teste novamente.

    Espero ter ajudado. Att. Leoci Melo

  • oman10 replied 9 years ago

    Não há disputas de penaltis, basta você imprimir a palavra "Penaltis", se não houver ganhador no tempo convencional.

  • aluiz1 replied 9 years ago

    Não entendi essa 3rd criteria Penalty Shootout....É como se fosse o saldo dos penaltis? Mas não informação nenhuma em relação aos penaltis =/

  • edprado replied 9 years ago

    que há de errado com meu código, da 20% wrong answer

    #include <stdio.h>
    
    int main(){
        int casos,cont,pri=0,seg=0,ter=0,qua=0,a=0,b=0,c=0,d=0;
        scanf("%d",&casos);
       for(cont=0;cont<casos;cont++){
          scanf("%d x %d",&pri,&seg);
          if(pri>seg){
                a+=3;
            }
          else if(seg>pri) b+=3;
          else if (seg==pri){
            a+=1; 
            b+=1;
          } 
    
          scanf("%d x %d",&ter,&qua);
          if(qua>ter) a+=3;
          else if(ter>qua) b+=3;
          else if (qua==ter){
            a+=1; 
            b+=1;
          } 
          if(a>b) printf("Time 1\n");
          else if(b>a) printf("Time 2\n");
          else if(a==b){
             c=pri+qua;
             d=seg+ter;
    
             if(c>d) printf("Time 1\n");
             else if(c<d) printf("Time 2\n");
             else if(c==d) {
                if(seg>qua) printf("Time 2\n");
                else if(seg<qua) printf("Time 1\n");
                else if(seg==qua) printf("Penaltis\n");
             }
          }      
        }
    }
  • ggroth replied 9 years ago

    Tua resposta para a entrada padrão está sendo essa:

    Time 2
    Time 2
    Time 1
    Time 2

    Preste atenção quando for usar if sem chaves. Você só pode ter uma operação. Se houverem mais operações, você deve usar chaves...

  • ssoares0 replied 9 years ago

    Olá Onde está o erro, já revisei muitas vezes!!

    #include <stdio.h>
    
    int main(){
        int casos,cont,pri,seg,ter,qua,a,b,c,d;
        scanf("%d",&casos);
        for(cont=0;cont<casos;cont++){
            pri=0;
            seg=0;
            ter=0;
            qua=0;
            a=0;
            b=0;
            c=0;
            d=0;
            scanf("%d x %d",&pri,&seg);
            if(pri>seg) a+=3;
            else if(seg>pri) b+=3;
            else if (seg==pri) a+=1; b+=1;
    
            scanf("%d x %d",&ter,&qua);
            if(qua>ter) a+=3;
            else if(ter>qua) b+=3;
            else if (qua==ter) a+=1; b+=1;
    
            if(a>b) printf("Time 1\n");
            else if(b>a) printf("Time 2\n");
            else if(a==b){
                c=pri+qua;
                d=seg+ter;
    
                if(c>d) printf("Time 1\n");
                else if(c<d) printf("Time 2\n");
                else if(c==d) {
                    if(seg>qua) printf("Time 2\n");
                    else if(seg<qua) printf("Time 1\n");
                    else if(seg==qua) printf("Penaltis\n");
                }
            }