TOPIC

PROBLEM 2150 - URI Fórum 1.0

URI Online Judge asked 5 years ago

URI Online Judge Fórum 1.0

MOD

This topic was solved and cannot recieve new replies.

  • Unknown replied 5 years ago

    Creio que o problema esteja no formato de entrada. Deve haver uma linha em branco no final, não causando "EOF" de imediato para o gets/fgets.

    Passei a checar por...

    if ( palavra[0] < ' ' ) {
                break;
            }

    ...após o fgets, e funcionou.

  • Unknown replied 4 years ago

    Estou recebendo 20% de WA, alguém me ajuda?

    #include <stdlib.h>
        #include <math.h>
        #include <stdio.h>
        #include <string.h>
    
        int main(){
            char c;
            int sum=0, v[400], op;
            while(1){
                op=1;
                sum=0;
                memset(v, 0, sizeof(int)*400);
                while(op){
                    if(scanf("%c", &c) == EOF)return 0;
                    if(c=='\n')op=0;
                    if(c==EOF)return 0;
                    if ( c < ' ' )op=0;
                    if(op)v[c]++;
                }
    
                op=1;
                while(op){
                    scanf("%c", &c);
                    if(c=='\n')op=0;
                    if(c==EOF)return 0;
                    if ( c < ' ' )op=0;
                    else if(v[c])sum++;
                }
                printf("%d\n", sum);
            }
            return 0;
        }
  • Gabriel Resende Machado replied 5 years ago

    Realmente as entradas de teste possuem valores em branco, que trolagem! kkkk

  • Unknown replied 5 years ago

    Resolvido também. Obrigado, bitfreeze :)

  • Samuel Silvino replied 5 years ago

    Resolvido! Muito obrigado!

  • Samuel Silvino replied 5 years ago

    O meu código trabalha corretamente para todos os casos teste, alguém pode me ajudar?

    Resolvido!
  • Icaro-Lima replied 5 years ago

    Resolvi usando string, deve ter sido algum problema relacionado com a quantidade de caracteres que a questão fez o favor de não dizer o máximo...

  • Icaro-Lima replied 5 years ago

    Não faço ideia para qual caso de teste o meu código pode falhar, deve ser algo muito extremo 20% W.A

    #include <cstdio>
    #include <cstring>
    
    using namespace std;
    
    int main()
    {
        char a[10000], b[10000];
        int tam, qty;
        while (gets(a))
        {
            bool letras[255] = {};
            qty = 0;
            gets(b);
            tam = strlen(a);
            for (int i = 0; i < tam; i++)
            {
                letras[a[i]] = true;
            }
            tam = strlen(b);
            for (int i = 0; i < tam; i++)
            {
                if (letras[b[i]] == true)
                {
                    qty++;
                }
            }
            printf("%i\n", qty);
        }
        return 0;
    }
  • Unknown replied 5 years ago

    O toolkit dessa questão está com problemas. Se inserir a frase e as vogais como linhas em branco, ele nao dá retorno. Se inserir apenas uma delas como linha em branco, a resposta de todos os casos testes ficam zoadas... algum moderador corrige aê!

  • João Henrique Damazio replied 5 years ago

    ---