Jeronimo Teixeira
-
Posts
1 -
Cadastrado em
-
Última visita
Tipo de conteúdo
Artigos
Selos
Fabricantes
Livros
Cursos
Análises
Fórum
posts postados por Jeronimo Teixeira
Sobre o Clube do Hardware
No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais
Direitos autorais
Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais
Problema Uri 2022 - Presentes de Natal
em C/C#/C++
Postado
Olá, eu uso o Uri pois meu professor utiliza essa plataforma para fazer nossas avaliações
no entanto estou tendo problema com um programa, no qual, consegui criar no compilador, no entanto, o uri alega 10% de erro
Link do problema: https://www.urionlinejudge.com.br/judge/pt/problems/view/2022
e minha resolução:
__________________________________________________________________________________________________
#include<stdio.h>
#include<string.h>
typedef struct{
char nomep[25];
double valor;
int nota;
}pp;
typedef struct{
char nome[15];
int qnt;
pp presente[100], aju;
}pe;
main()
{
pe crianca[100], ajuda;
int y, z, w, i;
char comp1[50], comp2[50], aux[1];
w=0;
while (scanf("%s%d",&crianca[w].nome, &crianca[w].qnt)!=EOF)
{
for(y=0; y<crianca[w].qnt; y++)
{
fflush(stdin);
gets(crianca[w].presente[y].nomep);
scanf("%lf%d",&crianca[w].presente[y].valor, &crianca[w].presente[y].nota);
}
for(y=0; y<crianca[w].qnt; y++)
{
for(z=(y+1); z<crianca[w].qnt; z++)
{
if(crianca[w].presente[y].nota < crianca[w].presente[z].nota)
{
ajuda.aju = crianca[w].presente[y];
crianca[w].presente[y]=crianca[w].presente[z];
crianca[w].presente[z]= ajuda.aju;
}
if(crianca[w].presente[y].nota == crianca[w].presente[z].nota)
{
if(crianca[w].presente[y].valor> crianca[w].presente[z].valor)
{
ajuda.aju=crianca[w].presente[y];
crianca[w].presente[y]=crianca[w].presente[z];
crianca[w].presente[z]= ajuda.aju;
}
if(crianca[w].presente[y].valor == crianca[w].presente[z].valor)
{
for(i=0; i<strlen(crianca[w].presente[y].nomep); i++)
{
comp1 = crianca[w].presente[y].nomep;
}
for(i=0; i<strlen(crianca[w].presente[z].nomep); i++)
{
comp2 = crianca[w].presente[z].nomep;
}
for(i=0; i<strlen(comp1); i++)
{
if(comp1==' ')
{
comp1 = comp1[i+1];
comp1[i+1]= ' ';
}
}
for(i=0; i<strlen(comp2); i++)
{
if(comp2==' ')
{
comp2 = comp2[i+1];
comp2[i+1]= ' ';
}
}
tolower(comp1);
tolower(comp2);
if(strcmp(comp1, comp2) > 0)
{
ajuda.aju=crianca[w].presente[y];
crianca[w].presente[y]=crianca[w].presente[z];
crianca[w].presente[z]= ajuda.aju;
}
}
}
}
}
w++;
}
for(z=0; z<w; z++)
{
printf("Lista de %s\n",crianca[z].nome);
for(y=0; y<crianca[z].qnt; y++)
{
printf("%s - R$%.2lf ", crianca[z].presente[y].nomep, crianca[z].presente[y].valor);
}
}
}