Problem hidden
|This problem was hidden by Editorial Board member probably because it has incorrect language|version or invalid test data, or description of the problem is not clear.|

RGB7725 - Зургийн альбом

 

N хуудастай альбомны p дэх нүүрэнд очиход хамгийн цөөндөө хэдэн эргүүлэлт хийх вэ?

Төгсгөлөөс нь эргүүлж болно. Эхлэл дараах байдлаар байна.

 image

Оролт

Эхний мөрөнд N, p тоонууд зайгаар тусгаарлагдан өгөгдөнө.  

1 <= N <= 10^5, 1 <= p <= N.

Гаралт

Хамгийн цөөн хуудас эргүүлэлтийн тоо

Жишээ 

Оролт 1

6

2

Гаралт 1

1

Тайлбар 1

Untitled Diagram(6).png

Эхнээс нь эргүүлбэл 1 эргүүлэлт хэрэгтэй.

Untitled Diagram(3).png

Хойноос нь эргүүлбэл 2 эргүүлэлт хэрэгтэй.

Цөөн эргүүлэлт нь 1 болно.

Оролт 2

5

4

Гаралт 2

0

Тайлбар 2

Untitled Diagram(4).png

Эхнээс нь эргүүлбэл 2 эргүүлэлт хэрэгтэй.

Untitled Diagram(5).png

Хойноос нь эргүүлэх бол эргүүлэх шаардлагагүй.

Цөөн эргүүлэлт нь 0 болно.

 

Орчуулсан : Дархан-Уул аймгийн Монгол-Оюу сургуулийн 11.1 ангийн сурагч Э.Цэлмэг 

 

 


Нэмсэн:Bataa
Огноо:2020-03-11
Хугацааны хязгаарлалт:1s
Эх кодын хэмжээний хязгаарлалт:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Програмчлалын хэлүүд:ADA95 ASM32 ASM64 BASH BF C NCSHARP CSHARP C++ 4.3.2 CPP C99 CLPS LISP sbcl LISP clisp D ERL FORTRAN HASK ICON ICK JAVA JS-RHINO JULIA LUA NEM NICE OCAML PAS-GPC PAS-FPC PERL PHP PIKE PRLG-swi PYTHON PYPY3 PYTHON3 RUBY SCALA SCM guile ST TCL WHITESPACE
Эх сурвалж:https://www.hackerrank.com/challenges/drawing-book/problem

hide comments
2024-05-15 13:21:14
deli suga
#include <iostream>
using namespace std;
int main(){
int n,p,s=0;
cin>>n>>p;
for(int i=1; i<=n; i+=2){
if(i==p || i-1==p)break;
s++;
}
int s1=0;
for(int i=n; i>=1; i-=2){
if( n%2==0 && i==n && i==p)break;
else if(n%2!=0 && i==n && i==p || i==p+1) break;
if(i==p || i+1==p) break;
s1++;
}
if(s>s1)cout<<s1;
else cout<<s;
return 0;
}

Last edit: 2024-05-15 13:21:45
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.