Автор | Сообщение |
|
Отправлено: 28.04.22 09:40. Заголовок: Другой ответ в №3766(А.Кабанов)
Добрый день. При ответе на первый вопрос задачи 3766 получается другой ответ. В чём ошибка ? const n = 5000; var m: array[1..n] of integer; i, j, srpar, min, k1, k2, z, a, p: integer; begin assign(input, '26.txt'); for i := 1 to n do begin readln(a); m[ i] := a; end; for i := 1 to n - 1 do for j := i + 1 to n do begin if (m[ i] + m[ j]) mod 2 = 0 then begin srpar := (m[ i] + m[ j]) div 2; for p := 1 to n do if (m[ p] < srpar) then inc(k1) else inc(k2); end; if (k1 >= 2500) and (k2 >= n div 4) then inc(z); end; write(z); end.
|
|
|
Ответов - 4
[только новые]
|
|
|
Отправлено: 28.04.22 13:11. Заголовок: 1) Неоптимизированны..
1) Неоптимизированный алгоритм, вы никак не сортируете и не используете факт сортировки. 2) Куча детских ошибок Поправил как мог var m: array of integer; i, j, srpar, min, k1, k2, z, a, p, n: integer; begin assign(input, '26-50.txt'); readln(n); setLength(m,n); for i := 0 to n-1 do readln(m[ i]); for i := 0 to n - 2 do begin println(i); for j := i + 1 to n-1 do begin if (m[ i] + m[ j]) mod 2 = 0 then begin srpar := (m[ i] + m[ j]) div 2; k1:=0; k2:=0; for p := 0 to n-1 do begin if (m[ p] < srpar) then inc(k1); if (m[ p] > srpar) then inc(k2); end; if (k1 >= n div 2) and (k2 >= n div 4) then inc(z); end; end; end; write(z); end.
|
|
|
|
Отправлено: 02.05.22 02:00. Заголовок: подскажите, в чем у меня ошибка, пожалуйста
#include <iostream> #include <fstream> #include <vector> #include <algorithm> using namespace std; int main() { ifstream f("26-50.txt"); int n, cnt = 0, m = 10000000000; f >> n; vector<int> v(n); int half = n / 2, quat = n / 4; for (auto &i: v) f >> i; sort(v.begin(), v.end()); for (int i = 0; i < n; i++) for (int j = i + 1; j < n; j++) { if ((v[ i] + v[j]) % 2 == 1) continue; int mid = (v[ i] + v[j]) / 2; if (v[half-1] < mid && v[n-quat] > mid) { cnt++; m = min(m, mid); } } cout << cnt << " " << m << endl; return 30; }
|
|
|
|
Отправлено: 02.05.22 02:02. Заголовок: странно, что сьело п..
странно, что сьело пробелы..
|
|
|
|
Отправлено: 28.04.22 20:37. Заголовок: Спасибо, Алексей..
Спасибо, Алексей
|
|
|
|