Вопрос Помощ с оптимизацией кода

Регистрация
30 Янв 2013
Сообщения
66
Репутация
-7
Спасибо
0
Монет
0
286221440_31de766042c38491b29f472aa0f0a846_800.png



286221440_0079fa8339c84d1390e420cfdad65421_800.png





Мое решение не проходит по времени, я думаю что он неэффективно перебирает m, подскажите как можно оптимизировать код. Братство это рядом стоящие элементы если что. #include

using namespace std;

#define int int64_t

signed main() {

ios::sync_with_stdio(0);

cin.tie(0);

int t;

cin >> t;

while (t--) {

int n;

cin >> n;

vector vec(n);

for (int i = 0; i < n; ++i) cin >> vec;

int ans = 0;

int m = -1;

for (int h = 0; h < n; ++h) {

if (vec[h] > m) m = vec[h];

}



for (int i = 0; i < n; ++i) {

for (int s = 2; s ans) ans = anss;

}

}

cout
 
int t;
cin &gt;&gt; t;

while (t--) {
int n;
cin &gt;&gt; n;

vector&lt;int&gt; vec(n);
for (int i = 0; i &lt; n; ++i)
cin &gt;&gt; vec;

int ans = 0;
int m = -1;

for (int h = 0; h &lt; n; ++h) {
if (vec[h] &gt; m)
m = vec[h];
}

for (int i = 0; i &lt; n; ++i) {
for (int s = 2; s &lt;= m; ++s) {
int l = vec % s;
int anss = 1;

for (int h = i + 1; h &lt; n; ++h) {
if (vec[h] % s == l)
anss++;
else
break;
}

if (anss &gt; ans)
ans = anss;
}
}

cout &lt;&lt; ans &lt;&lt; &#34;\n&#34;;
}

return 0;
 
это означает что твоя программа работает не долго, а бесконечно, то есть неверно
 
Оптимизируем. Быстро. Чётко. Эффективно. 100 рублей в год и начнем работать
 
Назад
Сверху