UTF.c Background

3ª Edição - Competição de Programação

Uma competição de programação promovida pelo Clube de Programação e parceiros, com o objetivo de fomentar a cultura de Programação Esportiva e estabelecer pontes entre instituições e empresas.

📅 Data Sábado, 13 de Dezembro de 2025
⏰ Horário 10:00 às 18:30
📍 Locais UTFPR - Campus Curitiba (Centro) e UTFPR - Campus Toledo
Inscreva-se Agora!

Sobre o Evento

O UTF.c é uma competição de Programação promovida pelo Clube de Programação da UTFPR, em parceria com o Capimara (UFPR), o BRUTE, o Emilias e o PPCI-TD e com o objetivo de fomentar a cultura de Programação Esportiva na região.

Formato da Competição

  • Exclusivamente presencial
  • Problemas inéditos
  • Times de 1 a 3 integrantes
  • Aberto para todos os níveis
  • Gratuito
📢 Importante: O evento é voltado para programadores de todos os níveis e de todos os cursos, incluindo estudantes de Ensino Médio!
☕ Coffee Break Generoso!

Durante a competição, teremos um coffee break completo com lanches, bebidas e muito mais, cortesia dos nossos incríveis patrocinadores! Você pode se concentrar em resolver problemas enquanto nos preocupamos com sua energia! 🍕🥤

Evento UTF.c

Patrocinadores

Agradecemos imensamente aos patrocinadores que tornaram esta edição viável:

Inscrição

Como se inscrever

  • ✅ Inscrições são gratuitas
  • ✅ Apenas um integrante do time deve preencher o formulário
  • ✅ Prazo: até 06/dez/2025
  • ✅ Times de 1 a 3 integrantes
💡 Prioridade de Inscrição:
Caso haja mais inscrições que vagas, a prioridade será dada a:
  1. Times de 2-3 integrantes da UTFPR, UFPR, ou Ensino Médio
  2. Times de 2-3 integrantes de outras instituições
  3. Times de 1 integrante da UTFPR, UFPR, ou Ensino Médio
  4. Times de 1 integrante de outras instituições
  5. Momento da inscrição
💡 Observação: Teremos 5 vagas dedicadas a times de ensino médio, 5 vagas dedicadas à times de outras instituições e 5 vagas dedicadas a times femininos! Dentre estas vagas valem as mesmas regras de prioridade de inscrição da concorrência geral. Caso haja vagas dedicadas não preenchidas, elas serão repassadas para a concorrência geral.

Formulário de Inscrição

Preencha o formulário do Google para se inscrever na competição

📝 Abrir Formulário de Inscrição
💡 Dica: O formulário abrirá em uma nova aba. Certifique-se de preencher todos os campos obrigatórios!

Programação

Horário Atividade
10h00m Abertura e explicação sobre como funciona a competição
10h30m Aquecimento
11h30m Palestras com patrocinadores
12h30m Intervalo para almoço (não fornecido pela competição)
13h45m Entrada nos laboratórios
14h00m Início da prova
14h30m ☕ Coffee Break — Lanches, bebidas e snacks (cortesia dos patrocinadores!)
17h30m Fim da prova
17h45m Cerimônia de encerramento
18h30m Despedida dos times

Premiação

🎁 Premiações Especiais e Customizadas!

Além das medalhas tradicionais de 1º, 2º e 3º lugares, teremos diversas premiações customizadas e especiais preparadas pelos nossos patrocinadores! Isso significa que mesmo times fora do pódio terão chances de ganhar prêmios incríveis. 🎉

Os prêmios extras serão revelados durante o evento — fique atento! 👀✨

💡 Observação: A premiação será apenas entre os times competindo na sede de Curitiba.
🥇

1º Lugar

Medalhas para o melhor time no placar geral da sede

🥈

2º Lugar

Medalhas para o segundo melhor time no placar geral da sede

🥉

3º Lugar

Medalhas para o terceiro melhor time no placar geral da sede

👩‍💻

Prêmio Ada Lovelace

Medalhas para o melhor time da sede composto apenas por mulheres (cisgênero ou transgênero) ou pessoas não-binárias

🎓

Prêmio Tony Hoare

Medalhas para o melhor time da sede composto apenas por estudantes de Ensino Médio

Regras

⚠️ ATENÇÃO! A violação de qualquer das regras a seguir poderá implicar na desclassificação do time!

Regras Gerais

  • ✅ É permitido consultar material impresso ou manuscrito (livros, cadernos, apostilas)
  • ❌ Não é permitido usar equipamentos eletrônicos (celulares, relógios, etc.)
  • 💻 Cada time terá apenas uma máquina, independente do número de integrantes
  • 🚫 Não é permitido comunicação entre times diferentes
  • 🍔 Não é permitido consumir alimentos ou bebidas nos laboratórios

Sistema e Soluções

  • 📝 Problemas nos moldes da Maratona de Programação
  • 💻 Linguagens permitidas: C, C++, Java, Python
  • 🤖 Julgamento automático por casos de teste secretos
  • ⏱️ Duração: 210 minutos de prova
  • 🖥️ Sistema: Maratona Linux

Vereditos Possíveis:

  • YES - Código aceito! 🎈
  • NO - COMPILATION ERROR - Erro de compilação
  • NO - TIME LIMIT EXCEEDED - Tempo limite excedido
  • NO - RUNTIME ERROR - Erro durante execução
  • NO - WRONG ANSWER - Resposta incorreta
  • NO - CLASS NAME MISMATCH - Nome da classe incorreto (Java)

Pontuação e Classificação

Para qualquer par de times A e B, o time A ficará à frente de B se:

  1. Tiver mais problemas resolvidos (balões) que B
  2. Com igual número de problemas, tiver menor pontuação de tempo
⏱️ Pontuação de Tempo:
  • Para cada problema aceito: timestamp da submissão + penalidades acumuladas
  • Cada submissão incorreta adiciona 20 pontos de penalidade
  • Penalidades só contam quando o problema é eventualmente aceito

Instruções por Linguagem

C / C++

  • Seu programa deve retornar zero, executando, como último comando, return 0 ou exit(0).
  • É sabido que em alguns casos de problemas com entradas muito grandes, os objetos cin podem ser lentos, por conta da sincronização de buffers da biblioteca stdio. Caso deseje utilizar cin e cout, um jeito de se contornar este problema é executando-se o comando ios_base::sync_with_stdio(0), no início de sua função main. Note que, neste caso, o uso de scanf e printf no mesmo programa é contra-indicado, uma vez que, com buffers separados, comportamentos inadequados podem ocorrer.
  • Códigos em C serão compilados pelo sistema com:
    gcc -g -O2 -std=gnu11 -static -lm
  • Códigos em C++ serão compilados pelo sistema com:
    g++ -g -O2 -std=gnu++20 -static
  • É recomendável compilar localmente seu código com as flags acima especificadas para garantir que sua submissão não resultará em NO - COMPILATION ERROR.

Java

  • O nome do arquivo deverá corresponder à letra do problema. Exemplo: A.java, B.java, C.java etc.
  • O nome da classe pública do código deve ser uma letra maiúscula, também correspondente à letra do problema (A, B, C etc.). Isto é, por exemplo, use
public class A {
  public static void main(String[] args) throws IOException {
    // code
  }
}

ao invés de

public class Main {
  public static void main(String[] args) throws IOException {
    // code
  }
}
  • O código será compilado com javac.

Python

  • Apenas Python 3 é suportado
  • Não há garantia de que códigos Python passarão no limite de tempo

Dicas

  • 📤 Submeta apenas o código-fonte de seu programa! Não submeta o arquivo executável!
  • 📋 Os códigos são avaliados de modo automático. Portanto, siga rigorosamente os formatos da entrada e da saída especificados nos enunciados dos problemas, conforme os exemplos fornecidos no caderno de prova. Por exemplo, se o problema pede para seu programa ler um inteiro positivo N < 100 e imprimir o quadrado de N, uma possível solução em C seria:
#include<stdio.h>

int main(void) {
  int n;
  scanf("%d", &n);
  printf("%d\n", n * n);
  return 0;
}
  • 🚫 Não imprima nada além do valor esperado! Por exemplo, NÃO inclua no seu código coisas como printf("Digite o numero: ");
  • ✅ Os elaboradores da prova garantem que seu programa só será testado com entradas que satisfazem as restrições do enunciado. Se o enunciado garante que o valor N da entrada é um inteiro positivo menor que 100, você pode confiar nessa garantia, não sendo necessário testá-la, nem validá-la.
  • 📚 Se você é iniciante no mundo da Programação Competitiva, recomendamos a Jornada de Iniciação do Clube de Programação

📹 Vídeo Tutorial: Como funciona o sistema

Se não estiver familiarizado, assista ao vídeo de dicas de uma edição anterior para entender melhor como funciona o sistema de submissão e julgamento:

Organização

Direção Geral

  • Leandro Miranda Zatesko (UTFPR) - Diretor Geral
  • Fernando Kiotheka (UFPR), Henrique Mendes (UTFPR), Tália Aguiar (UTFPR), Thais Say (UTFPR) - Diretores adjuntos

Comitê Organizador

  • Alan Tara (UTFPR)
  • Gustavo Montanheiro (UTFPR)
  • Gustavo Wilker (UTFPR)
  • Henrique Bubniak (UTFPR)
  • Nicolas Auersvalt (UTFPR)
  • Nicolas Stoppa (UTFPR)

"Please note that being well-versed in competitive programming is not the end goal, but only a means to an end. The true end goal is to produce all-rounder computer scientists/programmers who are much readier to produce better software and to face harder CS research problems in the future."

— Steve & Felix Halim, Competitive Programming Book

Edições Passadas

Confira as edições anteriores do UTF.c: