кода сайт принимает:
if ( x1==x2 && ( ( y1==2 && abs(y1-y2)==2 ) || ( y1>=2 && y2==y1+1 ) ) )
cout<<"YES";
else cout<<"NO";
А этот нет:
if ( x1==x2 && ( ( y1==2 && abs(y1-y2)==2 ) || ( y1>=2 && abs(y1-y2)==1 ) ) )
cout<<"YES";
else cout<<"NO";
почему так ?
Потому что это разные куски кода. Во втором случае проверяется, что y1 и y2 отличаются на единицу. В первом - что y2 строго больше y1 на ту же единицу.
Почему тогда работает ( y1==2 && abs(y1-y2)==2 )?
Не знаю, я не видел задачу
https://acmp.ru/asp/do/index.asp?main=task&id_course=1&id_section=2&id_topic=30&id_problem=189
Ты задаёшь дурацкие вопросы и шлёшь мало кода. Изучай код, думай, как он работает — это и есть обучение...
Обсуждают сегодня