#include # define endl '\n' # define clr(x,a) memset(x,a,sizeof(x)) # define vi vector # define all(a) a.begin(), a.end() # define deb(x) cout<<#x<<"=="< slova; clock_t vreme; struct Instructions{ int x; string name; }fop[mxN], op[mxN], pomop, novoop[mxN]; struct Stamp{ char slovo; int ponavalja; }slovca[50]; bool cmp_ponavljanja(Stamp x, Stamp y){return x.ponavalja>y.ponavalja;} void ispisi_tren(){ cout<<"tren\n"; cout<>n>>s; n=s.size(); bool raz[30]; clr(raz, 0); for(int i=0; i> A>> B>> M>> D>> H; for(int i=1; i<=250; i++) prekalkM[i]=prekalkM[i-1]+M/i; for(int i=1; i<=27; i++) cin>>price[i]; trazenasajz=-1; for(int i=1; i<=100; i++){ if(prekalkM[2*i+2]-2*M*(i+1) u stack -------- 6-> u red(iz steka) for(int i=0; i=1; j--) stek2[j+1]=stek2[j]; stek2[1]=s[i]; } else{ while(stek2[r2]!=s[i]){ r2++; stek2[r2]=stek1[r1]; r1--; add_instruction(6, -1); } //nalazi se na r2 u stek2 U REDU, SAD GA SAMO STAMPAM - stampanje add_instruction(3, 1); //rotiranje steka char moj=stek2[r2]; for(int j=r2-1; j>=1; j--) stek2[j+1]=stek2[j]; stek2[1]=moj; } } } void pocetak(){ sort(all(slova)); for(int i=0; i=0; j--) red[broj][j+1]=red[broj][j]; red[broj][0]=c; } void pripremi(){ int ar=1, newar, mesto; for(int i=0; i=4500) return; shuffle (slova.begin(), slova.end(), default_random_engine(rand()%15000)); } } void nadji_reci(){ //ovo mi ne treba nigde (za sad) int pre=0; for(int i=0; i=time1) break; shuffle(all(slova), default_random_engine(rand()%15000)); } od1do27redova(); pocetak(); calculate(); deb(fscore); ispis(); return 0; }