Pomoc oko zadatka(2007 B1 Drzavno - srednja skola)

Moze li neko da mi kaze kako da resim ovaj zadatak? Po mogucnosti samo hint, ne celo resenje :slight_smile:

zadatak: http://bubblebee.petlja.org/Media/Default/Problem/Drzavno%202007%20B1%20Plivanje.pdf

To ti je obican brutfors,vidis da je t<=50 i n<=1000 O(t^3*n) lagano prolazi .I.e proverravas svaku vrednost za 1.,2.,trecu poziciju.Evo kod (mada sumnjam da ti treba):

#include <bits/stdc++.h>
using namespace std;
int n,m,p,f,s,t;
struct Pla{
int fir,sec,thir;
};
Pla A[1001];
int calc(int a,int b,int c,int v){
return A[v].fira+A[v].secb+A[v].thir*c;
}
int main()
{
scanf("%d %d %d",&n,&m,&p);
for(int i=0;i<m;i++){
scanf("%d %d %d",&f,&s,&t);
A[f].fir++;
A[s].sec++;
A[t].thir++;
}
int maks=0,res;
for(int i=1;i<p-1;i++){
for(int j=i+1;j<p;j++){
for(int k=j+1;k<p+1;k++){
maks=0;
for(int l=1;l<=n;l++){
if(calc(k,j,i,l)>maks){
maks=calc(k,j,i,l);
res=l;
}
}
if(res==1){
printf("%d %d %d",k,j,i);
return 0;
}
}
}
}
printf("-1");
return 0;
}

1 Like

Hvala :slight_smile: (kucam ovo da bi imao vise od 20 karaktera)