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.|

RGB7533 - Генералын айлчлал

Батлан хамгаалахын сайд хурандаа Супер Дүприйн удирдлага доор байдаг супер нууц цэргийн салааг шалгуулахаар генералыг илгээжээ. Мэдээг нь сонсоод хурандаа бүх n цэргүүдээ жагсаалын талбайд дарааллаар жагсаав. Цэргийн дүрэмд цэргүүд өндрөөрөө өсөх биш дарааллаар зогсох ёстой. Гэвч үүнийг хийх цаг байсангүй ба цэргүүд дурын байрлалаар зогссон байв. Гэхдээ генерал холын хараа муутай тул хэрвээ хамгийн өндөр цэрэг эхэнд зогсоод хамгийн намхан цэрэг сүүлд зогссон бол генерал зөв жагсаж гэж хардаг. Бусад цэргүүдийн байрлал чухал биш ба хамгийн өндөр болон намхан цэрэг хэд хэд байх тохиолдол байгааг санаарай. Мөн зөвхөн эхний болон сүүлийн цэргийн өндөр л чухал.

Жишээ нь : Генерал өндрүүдийн дараалал (4,3,4,2,1,1) үед зөв гэж тооцох ба дараалал буруу тохиолдолд (4,3,1,2,2) буруу гэж тооцно. Хурандаа ямар ч 2хөрш цэргийн байрыг сольж чадах ба үүнд 1 секунд зарцуулна. Иймд түүнд генералын зөв гэж үзэх жагсаалд аваачих хэрэгтэй хамгийн бага хугацааг олоход нь тусална уу.

Input

Эхний мөрөнд бүхэл (2n100) тоог агуулах ба энэ нь жагсаалын цэргүүдийн тоо юм. дахь мөрөнд a1,a2,...,a(1ai100) цэргүүдийн өндрийн утгыг агуулна.

Тоонууд зайгаар тусгаарлагдан өгөгдөнө. a1,a2,...,an тоонууд заавал ялгаатай байх албагүй.

Output

Нэг бүхэл тоо байх ба генералын зөв гэж үзэх жагсаалд аваачих хэрэгтэй хамгийн бага хугацаа.

Example

Input 1:

4
33 44 11 22

Output 1:

2

Input 2:

7
10 10 58 31 63 40 76

Output 2:

10



Нэмсэн:Bataa
Огноо:2013-03-15
Хугацааны хязгаарлалт:1s
Эх кодын хэмжээний хязгаарлалт:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Програмчлалын хэлүүд:ADA95 ASM32 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
Эх сурвалж:Codeforces

hide comments
2024-01-24 07:01:34
nugliin nudiig gurilaar huuraad bgaarei BALDAN guai
2023-12-15 09:21:48
МИНИЙ МИНИЙ БИКИНИ

Last edit: 2023-12-15 09:22:16
2023-12-15 09:21:05
lhagvaalhagvaalhagvaavlhagvaavlhagvaavvv
lhagvaalhagvaalhagvaavvvvlhagvaavvvlhagvaalhagvaavvvvlhagvaalhagvaavvvvvvlhagvaalhagvaalhagvaalhagvaavvv
2023-11-07 14:03:46
#include <iostream>
using namespace std;

int main() {
int n;
cin >> n;
int a[101];

for (int i = 1; i <= n; i++) {
cin >> a[i];
}

int b = 0, g = 1, c = 101, j;

for (int i = 1; i <= n; i++) {
if (a[i] > b) {
b = a[i];
}
if (c > a[i]) {
c = a[i];
}
}

while (a[g] != b) {
g++;
}

j = n;

while (a[j] != c) {
j--;
}

if (g > j) {
cout << g - 1 + n - j - 1;
return 0;
} else if (g < j) {
cout << g - 1 + n - j;
return 0;
} else if (g == j) {
cout << 0;
return 0;
}
}
2023-02-18 15:04:22
#include <stdio.h>
#include <iostream>
#include <sstream>
#include <string>

using namespace std;

int main() {
int T, a = 0, a_, b = 100, b_, temp = 0;
scanf("%d", &T);

int arr[T];

cin.ignore();
string line;
getline(cin, line);

istringstream ss(line);

for (int i = 0; i < T; i++) {
ss >> temp; arr[i] = temp; }

for (int i = 0; i < T; i++) {
if (arr[i] > a) { a = arr[i]; a_ = i; }
if (arr[i] <= b) { b = arr[i]; b_ = i; }
}

if (a_ > b_) printf("%d\n", a_ + T - b_ - 2);
else printf("%d\n", a_ + T - b_ - 1);

return 0;
}

easier method :)
2020-11-01 03:38:06

АЛГОРИТМЫН ЦАГААН ТОЛГОЙ
PROFILE
News
Problems
Status
Ranking

Forum
ads via Carbon
Advance your knowledge in tech with free access to 7,500+ expert tech books and videos
ADS VIA CARBON
SPOJ
time:
2020-11-01

03 : 37 : 32

Бодолт илгээх Миний бодолтууд Бүх бодолтууд Шилдэг бодолтууд PDF Жагсаалт руу буцах
RGB7533 - Генералын айлчлал
Батлан хамгаалахын сайд хурандаа Супер Дүприйн удирдлага доор байдаг супер нууц цэргийн салааг шалгуулахаар генералыг илгээжээ. Мэдээг нь сонсоод хурандаа бүх n цэргүүдээ жагсаалын талбайд дарааллаар жагсаав. Цэргийн дүрэмд цэргүүд өндрөөрөө өсөх биш дарааллаар зогсох ёстой. Гэвч үүнийг хийх цаг байсангүй ба цэргүүд дурын байрлалаар зогссон байв. Гэхдээ генерал холын хараа муутай тул хэрвээ хамгийн өндөр цэрэг эхэнд зогсоод хамгийн намхан цэрэг сүүлд зогссон бол генерал зөв жагсаж гэж хардаг. Бусад цэргүүдийн байрлал чухал биш ба хамгийн өндөр болон намхан цэрэг хэд хэд байх тохиолдол байгааг санаарай. Мөн зөвхөн эхний болон сүүлийн цэргийн өндөр л чухал.

Жишээ нь : Генерал өндрүүдийн дараалал (4,3,4,2,1,1) үед зөв гэж тооцох ба дараалал буруу тохиолдолд (4,3,1,2,2) буруу гэж тооцно. Хурандаа ямар ч 2хөрш цэргийн байрыг сольж чадах ба үүнд 1 секунд зарцуулна. Иймд түүнд генералын зөв гэж үзэх жагсаалд аваачих хэрэгтэй хамгийн бага хугацааг олоход нь тусална уу.

Input
Эхний мөрөнд бүхэл n (2 ≤ n ≤ 100) тоог агуулах ба энэ нь жагсаалын цэргүүдийн тоо юм. 2 дахь мөрөнд a1, a2, ..., an (1 ≤ ai ≤ 100) цэргүүдийн өндрийн утгыг агуулна.

Тоонууд зайгаар тусгаарлагдан өгөгдөнө. a1, a2, ..., an тоонууд заавал ялгаатай байх албагүй.

Output
Нэг бүхэл тоо байх ба генералын зөв гэж үзэх жагсаалд аваачих хэрэгтэй хамгийн бага хугацаа.

Example
Input 1:

4
33 44 11 22

Output 1:

2

Input 2:

7
10 10 58 31 63 40 76

Output 2:

10


Нэмсэн: Bataa
Огноо: 2013-03-15
Хугацааны хязгаарлалт: 1s
Эх кодын хэмжээний хязгаарлалт: 50000B
Memory limit: 1536MB
Cluster: Cube (Intel G860)
Програмчлалын хэлүүд: ADA95 ASM32 BASH BF C CSHARP C++ 4.3.2 CPP C99 CLPS LISP sbcl LISP clisp D ERL FORTRAN HASK ICON ICK JAVA JS-RHINO LUA NEM NICE OCAML PAS-GPC PAS-FPC PERL PHP PIKE PRLG-swi PYTHON RUBY SCALA SCM guile ST TCL WHITESPACE
Эх сурвалж: Codeforces
hide comments
2019-12-26 10:41:40
#include <cstdio>
int main()
{
int n,a[101],i,b=0,g=1,c=101,j;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
scanf("%d",&a[i]);
if(a[i]>b) b=a[i];
if(c>a[i]) c=a[i];
}
while(a[g]!=b)
{
g++;
}
j=n;
while(a[j]!=c)
{
j--;
}
if(g>j)
{
printf("%d",(g-1+n-j-1)); return 0;
}
if(g<j)
{
printf("%d",(g-1+n-j)); return 0;
}
if(g=j)
{
printf("%d",0); return 0;
}
}
//bj 11-4 SHMHF//
2019-12-06 12:21:29
#include <cstdio>
int main()
{
int n,a[101],i,b=0,g=1,c=101,j;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
scanf("%d",&a[i]);
if(a[i]>b) b=a[i];
if(c>a[i]) c=a[i];
}
while(a[g]!=b)
{
g++;
}
j=n;
while(a[j]!=c)
{
j--;
}
if(g>j)
{
printf("%d",(g-1+n-j-1)); return 0;
}
if(g<j)
{
printf("%d",(g-1+n-j)); return 0;
}
if(g=j)
{
printf("%d",0); return 0;
}
}
2019-04-03 06:41:45
#include<cstdio>
#include<cmath>
using namespace std;
int a[10001];
int n, i, mn, mx, p, q, s, t;
int main(){
scanf("%d", &n);
for( i=1; i<=n; i++)
scanf("%d", &a[i]);

mx=0;
mn=1000;

for( i=1; i<=n; i++){
if( a[i]>mx ){ mx=a[i];
p=i;
}

if( a[i]<mn ){ mn=a[i];
q=i;
}
}

s=p-n;
t=q-n;
printf("%d", s-t);


return 0;
}
2019-04-01 11:37:11
lhagvaa
Leave a Comment
|Notes:|
1. Don't post any source code here.|
2. Please be careful, leave short comments only. Don't spam here.|
3. For more discussion (hints, ideas, solutions) please visit our forum.|
4. Authors are allowed to delete the post and use html code here (e.g. to provide some useful links).|
About SPOJ RSS
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.
Feedback
Not using Hotjar yet?
Select an element on the page.
2019-12-26 10:41:40
#include <cstdio>
int main()
{
int n,a[101],i,b=0,g=1,c=101,j;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
scanf("%d",&a[i]);
if(a[i]>b) b=a[i];
if(c>a[i]) c=a[i];
}
while(a[g]!=b)
{
g++;
}
j=n;
while(a[j]!=c)
{
j--;
}
if(g>j)
{
printf("%d",(g-1+n-j-1)); return 0;
}
if(g<j)
{
printf("%d",(g-1+n-j)); return 0;
}
if(g=j)
{
printf("%d",0); return 0;
}
}
//bj 11-4 SHMHF//
2019-12-06 12:21:29
#include <cstdio>
int main()
{
int n,a[101],i,b=0,g=1,c=101,j;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
scanf("%d",&a[i]);
if(a[i]>b) b=a[i];
if(c>a[i]) c=a[i];
}
while(a[g]!=b)
{
g++;
}
j=n;
while(a[j]!=c)
{
j--;
}
if(g>j)
{
printf("%d",(g-1+n-j-1)); return 0;
}
if(g<j)
{
printf("%d",(g-1+n-j)); return 0;
}
if(g=j)
{
printf("%d",0); return 0;
}
}
2019-04-03 06:41:45
#include<cstdio>
#include<cmath>
using namespace std;
int a[10001];
int n, i, mn, mx, p, q, s, t;
int main(){
scanf("%d", &n);
for( i=1; i<=n; i++)
scanf("%d", &a[i]);

mx=0;
mn=1000;

for( i=1; i<=n; i++){
if( a[i]>mx ){ mx=a[i];
p=i;
}

if( a[i]<mn ){ mn=a[i];
q=i;
}
}

s=p-n;
t=q-n;
printf("%d", s-t);


return 0;
}
2019-04-01 11:37:11
lhagvaa
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.