Submission #1593838


Source Code Expand

#include<iostream>
#include<cstdio>
#include<cstring>
namespace YuanTi
{
	const int N=200100;
	int s[N],t[N];
	int n,m;
	void initialize()
	{
		scanf("%d",&n),m=n*2-1;
		for(int i=1;i<=m;i++)
			scanf("%d",s+i);
	}
	bool check(int x)
	{
		for(int i=1;i<=m;i++)t[i]=(s[i]<=x);

		int a=-1,b=-1;
		for(int i=n;i>1;i--)
			if(t[i]==t[i-1]){a=i;break;}
		for(int i=n;i<m;i++)
			if(t[i]==t[i+1]){b=i;break;}
		if(a<0 && b<0)return t[n]^((n-1)&1);
		if(a<0)return t[b];
		if(b<0)return t[a];
		if(n-a<b-n)return t[a];
		return t[b];
	}
	int getans()
	{
		int u=m,d=1,mid;
		while(u>d)
		{
			if(check(mid=(u+d)>>1))u=mid;
			else d=mid+1;
		}
		return d;
	}
	void solve()
	{
		initialize();

		printf("%d\n",getans());
	}
}
int main()
{
	YuanTi::solve();
	return 0;
}

Submission Info

Submission Time
Task D - Median Pyramid Hard
User Demerzel_IV
Language C++14 (GCC 5.4.1)
Score 1300
Code Size 814 Byte
Status AC
Exec Time 25 ms
Memory 1792 KB

Compile Error

./Main.cpp: In function ‘void YuanTi::initialize()’:
./Main.cpp:11:25: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d",&n),m=n*2-1;
                         ^
./Main.cpp:13:19: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
    scanf("%d",s+i);
                   ^

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 1300 / 1300
Status
AC × 2
AC × 57
Set Name Test Cases
Sample 0_00.txt, 0_01.txt
All 0_00.txt, 0_01.txt, 1_00.txt, 1_01.txt, 1_02.txt, 1_03.txt, 1_04.txt, 1_05.txt, 1_06.txt, 1_07.txt, 1_08.txt, 1_09.txt, 1_10.txt, 1_11.txt, 1_12.txt, 1_13.txt, 1_14.txt, 1_15.txt, 1_16.txt, 1_17.txt, 1_18.txt, 1_19.txt, 1_20.txt, 1_21.txt, 1_22.txt, 1_23.txt, 1_24.txt, 1_25.txt, 1_26.txt, 1_27.txt, 1_28.txt, 1_29.txt, 1_30.txt, 1_31.txt, 1_32.txt, 1_33.txt, 1_34.txt, 1_35.txt, 1_36.txt, 1_37.txt, 1_38.txt, 1_39.txt, 1_40.txt, 1_41.txt, 1_42.txt, 1_43.txt, 1_44.txt, 1_45.txt, 1_46.txt, 1_47.txt, 1_48.txt, 1_49.txt, 1_50.txt, 1_51.txt, 1_52.txt, 1_53.txt, 1_54.txt
Case Name Status Exec Time Memory
0_00.txt AC 1 ms 256 KB
0_01.txt AC 1 ms 256 KB
1_00.txt AC 1 ms 256 KB
1_01.txt AC 1 ms 256 KB
1_02.txt AC 1 ms 256 KB
1_03.txt AC 22 ms 1792 KB
1_04.txt AC 23 ms 1792 KB
1_05.txt AC 24 ms 1792 KB
1_06.txt AC 24 ms 1792 KB
1_07.txt AC 24 ms 1792 KB
1_08.txt AC 24 ms 1792 KB
1_09.txt AC 22 ms 1792 KB
1_10.txt AC 22 ms 1792 KB
1_11.txt AC 24 ms 1792 KB
1_12.txt AC 24 ms 1792 KB
1_13.txt AC 25 ms 1792 KB
1_14.txt AC 25 ms 1792 KB
1_15.txt AC 23 ms 1792 KB
1_16.txt AC 23 ms 1792 KB
1_17.txt AC 23 ms 1792 KB
1_18.txt AC 23 ms 1792 KB
1_19.txt AC 23 ms 1792 KB
1_20.txt AC 22 ms 1792 KB
1_21.txt AC 22 ms 1792 KB
1_22.txt AC 22 ms 1792 KB
1_23.txt AC 24 ms 1792 KB
1_24.txt AC 24 ms 1792 KB
1_25.txt AC 24 ms 1792 KB
1_26.txt AC 23 ms 1792 KB
1_27.txt AC 23 ms 1792 KB
1_28.txt AC 24 ms 1792 KB
1_29.txt AC 23 ms 1792 KB
1_30.txt AC 23 ms 1792 KB
1_31.txt AC 24 ms 1792 KB
1_32.txt AC 24 ms 1792 KB
1_33.txt AC 23 ms 1792 KB
1_34.txt AC 24 ms 1792 KB
1_35.txt AC 24 ms 1792 KB
1_36.txt AC 23 ms 1792 KB
1_37.txt AC 23 ms 1792 KB
1_38.txt AC 24 ms 1792 KB
1_39.txt AC 24 ms 1792 KB
1_40.txt AC 23 ms 1792 KB
1_41.txt AC 24 ms 1792 KB
1_42.txt AC 24 ms 1792 KB
1_43.txt AC 24 ms 1792 KB
1_44.txt AC 23 ms 1792 KB
1_45.txt AC 23 ms 1792 KB
1_46.txt AC 24 ms 1792 KB
1_47.txt AC 23 ms 1792 KB
1_48.txt AC 23 ms 1792 KB
1_49.txt AC 23 ms 1792 KB
1_50.txt AC 23 ms 1792 KB
1_51.txt AC 22 ms 1792 KB
1_52.txt AC 23 ms 1792 KB
1_53.txt AC 23 ms 1792 KB
1_54.txt AC 23 ms 1792 KB