|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
24.04.2018, 23:48 | #1 |
Пользователь
Регистрация: 17.04.2018
Сообщений: 28
|
Что вы поправили в этом коде? Сервер не принимает
A нужно найти минимальное положительное число, которое больше своей соседей.
#include <iostream> using namespace std; int main(){ int i,n,*a; cin>>n; a=new int[n]; for(i=0;i<n;i++) cin>>a[i]; bool flag = false; int mn = 0; for(i=1;i<n-1;i++){ if(a[i]>a[i-1]&&a[i]>a[i+1]){ if (a[i] > 0) { if (!flag || a[i] < mn) { flag = true; mn = a[i]; } } }} if (!flag) {cout<<"NO";} else cout << mn; return 0; } |
25.04.2018, 00:08 | #2 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,759
|
1. Память надо удалять за собой
2. Проверять флаг в цикле нет смысла 3. Проверку на положительность можно поднять в верхний иф. Т.к. она быстрее двух других условий, то в целом будет не медленнее. 4. Сравнение с минимумом тоже можно поднять вверх. 5. Почему вы не проверяете первый и последний? Да у неих по одному соседу, но... |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Что и куда нужно вписать в этом коде, чтобы он помимо того, что он сейчас делает еще и считал сумму цифр соответствующих элементов | Romeshek | Паскаль, Turbo Pascal, PascalABC.NET | 3 | 29.09.2017 15:32 |
[C++]: Почему функция в этом коде принимает в качестве аргумента указатель на указатель? | nwhta | Общие вопросы C/C++ | 5 | 04.01.2017 18:09 |
что происходит в этом коде | Dimasik73 | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 5 | 19.02.2012 23:54 |
что означают ... в этом коде? | Rondo | Помощь студентам | 1 | 28.01.2011 11:45 |
что такое answ в этом коде! | Rondo | Помощь студентам | 1 | 17.01.2011 11:26 |