O que é o uCoder?

O uCoder é uma plataforma onde programadores podem testar as suas habilidades, aprender coisas novas e disputar com pessoas do mundo todo.

Qual é o objetivo de resolver problemas?

A resolução de problemas busca aprimorar os conhecimentos em diversos domínios de Ciências da Computação, tais como Algoritmos, Estrutura de Dados, Grafos, entre outros.

Como isso vai me ajudar?

Isso vai te ajudar a se tornar um profissional melhor, que pensa mais rápido, que consegue resolver os problemas que surgem no trabalho de forma mais rápida e com menos desperdício de recursos.

Organização dos problemas

Todos os problemas visíveis publicamente são listados na página de problemas. Esses problemas são divididos por níveis: 1 (mais fácil) até 10 (mais difíceis), categorias, competições e por assuntos.

Pontuação

Cada problema resolvido é referente a um ponto para o usuário. Os usuários são organizados em um Ranking onde são ordenados por: 1) Número de problemas resolvidos, 2) Número de problemas tentados e 3) Número de submissões.

Entrada e saída dos programas

Todos os códigos devem ler a partir da entrada padrão (scanf/getchar/gets em C, cin em C++ e input em Python), e os resultados devem ser impressos utilizando a saída padrão (printf/puts em C, cout em C++ e print em Python). Ou seja, você não deve ler os dados de um arquivo.

Entrada

Neste tipo de entrada não é especificada a quantidade de casos de teste. Pode ser 1,2 ou mais de 1 milhão. Normalmente um arquivo de entrada com três casos de teste poderia ser assim:
            7123
            32
            125
            
Em C++, esta leitura pode ser resolvida da seguinte forma:
                int N;
                while (cin >> N) {
                    ...
                }
            
Em Python, esta leitura pode ser resolvida da seguinte forma:
                while True:
                    try:
                        N = input()
                    except:
                        break
            
Isto significa que enquanto houver valores inteiros no arquivo de entrada, eles serão lidos para a variável N.

Mensagens durante a execução dos problemas

As únicas respostas que o seu código deve gerar são as especificadas no problema, qualquer outra mensagem resultará em resposta errada. Atente a mensagens como: "Digite o primeiro número:", ou "A resposta é: ", e semelhantes.

Tempo Limite das submissões

Cada problema tem um tempo limite que é mostrado na página de detalhes do problema. Algumas linguagens de programação possuem tempo limite maior que outras, essa informação pode ser vista na página com os detalhes do Ambiente

Erro em cálculo simples usando ponto flutuante

Experimente trocar a variável de float para double. Às vezes o erro se dá apenas pela precisão da variável.

Quais são as conquistas disponíveis?

Veja a lista completa de conquistas neste link.