Pagini recente » Cod sursa (job #182892) | Cod sursa (job #25840) | Cod sursa (job #2767110) | Cod sursa (job #1399744) | Cod sursa (job #433735)
Cod sursa(job #433735)
#include <stdio.h>
#include <stdlib.h>
int main() {
FILE *fi=fopen("gutui.in","r");
FILE *fo=fopen("gutui.out","w");
typedef struct gutui {
int h,g,cules;
} Gutui;
Gutui *g,aux;
int n,h,u,max,total=0,i,j;
fscanf(fi,"%d %d %d",&n,&h,&u);
g=(Gutui*)calloc(n,sizeof(Gutui));
for (i=0;i<n;i++)
fscanf(fi,"%d %d",&g[i].h,&g[i].g);
for (i=0;i<n-1;i++)
for (j=i+1;j<n;j++)
if (g[j].h>g[i].h) {
aux=g[i];
g[i]=g[j];
g[j]=aux;
}
i=0;
while (i<n) {
max=0;
for (;i<n;i++)
if (g[i].h+u>h) { //daca o sa dispara la pasul k+1
if (g[i].g>max) {
max=g[i].g;
//ales=i;
}
}
else break;
total+=max;
for (j=0;j<n;j++)
g[j].h+=u;
}
fprintf(fo,"%d",total);
fclose(fi);
fclose(fo);
return 0;
}