#include int main (void) { int ceny[70000], dni, peniaze, najmensie, najvacsie, i, rozdiel, posv, posm, rozdiel1, rozdiel2, pomoc, rozdiel3, rozdiel4, pomoc1, pomoc2; najmensie = 40000; najvacsie = 0; scanf("%d", &dni); while (dni != 0) { scanf("%d", &peniaze); for (i = 0; i < dni; i++) { scanf("%d", &ceny[i]); if (ceny[i] > najvacsie) { najvacsie = ceny[i]; posv = i; } if (ceny[i] < najmensie) { najmensie = ceny[i]; posm = i; } } if (posm < posv) { rozdiel = (najvacsie - najmensie) * (peniaze/najmensie); printf("%d\n", rozdiel); } else { pomoc = 0; for (i = posm; i < dni; i++) { if (pomoc < ceny [i]) pomoc = ceny[i]; } rozdiel1 = (pomoc - najmensie)*(peniaze/najmensie); pomoc = 40000; for (i = 1; i < posv; i++) { if (pomoc > ceny [i]) pomoc = ceny[i]; } rozdiel2 = (najvacsie - pomoc)*(peniaze/pomoc); while (posm > posv) { pomoc1 = posv+1; pomoc2 = posm; najvacsie = 0; najmensie = 40000; for (i = pomoc1; i <= pomoc2; i++) { if (ceny[i] > najvacsie) { najvacsie = ceny[i]; posv = i; } if (ceny[i] < najmensie) { najmensie = ceny[i]; posm = i; } } if (posm < posv) { rozdiel = (najvacsie - najmensie) * (peniaze/najmensie); if ((rozdiel > rozdiel1) && (rozdiel > rozdiel2)) { printf("%d\n", rozdiel); break; } else break; } else if (najmensie != 0) { pomoc = 0; for (i = posm; i <= dni; i++) { if (pomoc < ceny [i]) pomoc = ceny[i]; } rozdiel3 = (pomoc - najmensie)*(peniaze/najmensie); if (rozdiel3 > rozdiel1) rozdiel1 = rozdiel3; pomoc = 40000; for (i = 1; i <= posv; i++) { if (pomoc > ceny [i]) pomoc = ceny[i]; } rozdiel4 = (najvacsie - pomoc)*(peniaze/pomoc); if (rozdiel4 > rozdiel2) rozdiel2 = rozdiel4; } } } if ((rozdiel1 > rozdiel2) && (rozdiel1 > rozdiel)) printf("%d\n", rozdiel1); if ((rozdiel1 < rozdiel2) && (rozdiel2 > rozdiel)) printf("%d\n", rozdiel2); if ((rozdiel1 == rozdiel) && (rozdiel1 == rozdiel2) && (rozdiel1 > 0)) printf("%d\n", rozdiel1); if ((rozdiel1 == 0) && (rozdiel2 == 0) && (rozdiel == 0)) printf("0\n"); rozdiel = 0; najmensie = 40000; najvacsie = 0; scanf("%d", &dni); } return 0; }