답안 #14141

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
14141 2015-05-02T08:20:19 Z ggoh Be Two Bees (OJUZ10_b2b) C++
33 / 100
1000 ms 5772 KB
#include<cstdio>
#include<algorithm>
#include<vector>
#include<queue>
#include<cstring>
long long a,b,i,j,k,m,X,Y,p=1,q=2,T1[100002],T2[100002];
long double H,x[100001],y[100001];
long double com(int ii,int jj)
{
	return (H-x[ii]-x[jj])/(y[ii]+y[jj])*y[ii]*y[jj];
}
main()
{
	scanf("%d",&a);
	for(i=1;i<=a;i++)
	{
		scanf("%Lf",&x[i]);
		H+=x[i];
	}
	for(j=1;j<=a;j++)
	{
		scanf("%Lf",&y[j]);
		if(m<y[j])m=y[j];
	}
	if(a<=1000)
	{
		for(i=1;i<=a;i++)
		{
			for(j=i+1;j<=a;j++)
			{
				if(com(i,j)<com(p,q))p=i,q=j;
			}
		}
		printf("%d %d",p,q);
	}
	else
	{
		for(i=1;i<=a;i++)
		{
			if(T1[(int)y[i]]==0)
			{
				T1[(int)y[i]]=i;
			}
			else
			{
				if(x[i]>=x[T1[(int)y[i]]])
				{
					T2[(int)y[i]]=T1[(int)y[i]];
					T1[(int)y[i]]=i;
				}
				else if(T2[(int)y[i]]==0)T2[(int)y[i]]=i;
				else if(x[i]>x[T2[(int)y[i]]])
				{
					T2[(int)y[i]]=i;
				}
			}
		}
		for(k=1;k<=m;k++)
		{
			if(T1[k])i=T1[k];
			{
				for(j=1;j<=m;j++)
				{
					if(T1[j]&&T1[j]!=i)
					{
						if(com(i,T1[j])<com(p,q))p=i,q=T1[j];
					}
					else if(T2[j])
					{
						if(com(i,T2[j])<com(p,q))p=i,q=T2[j];
					}
				}
			}
		}
		if(p>q)printf("%d %d",q,p);
		else printf("%d %d",p,q);
	}
}
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 5772 KB Output is correct
2 Correct 0 ms 5772 KB Output is correct
3 Correct 0 ms 5772 KB Output is correct
4 Correct 0 ms 5772 KB Output is correct
5 Correct 0 ms 5772 KB Output is correct
6 Correct 0 ms 5772 KB Output is correct
7 Correct 0 ms 5772 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 5772 KB Output is correct
2 Correct 14 ms 5772 KB Output is correct
3 Correct 0 ms 5772 KB Output is correct
4 Correct 4 ms 5772 KB Output is correct
5 Correct 15 ms 5772 KB Output is correct
6 Correct 11 ms 5772 KB Output is correct
7 Correct 15 ms 5772 KB Output is correct
8 Correct 15 ms 5772 KB Output is correct
9 Correct 12 ms 5772 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 45 ms 5772 KB Output is correct
2 Incorrect 49 ms 5772 KB Output isn't correct
3 Correct 62 ms 5772 KB Output is correct
4 Correct 39 ms 5772 KB Output is correct
5 Correct 65 ms 5772 KB Output is correct
6 Incorrect 45 ms 5772 KB Output isn't correct
7 Correct 38 ms 5772 KB Output is correct
8 Incorrect 42 ms 5772 KB Output isn't correct
9 Incorrect 12 ms 5772 KB Output isn't correct
10 Incorrect 42 ms 5772 KB Output isn't correct
11 Correct 50 ms 5772 KB Output is correct
12 Incorrect 58 ms 5772 KB Output isn't correct
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 1000 ms 5768 KB Program timed out
2 Execution timed out 1000 ms 5768 KB Program timed out
3 Execution timed out 1000 ms 5768 KB Program timed out
4 Execution timed out 1000 ms 5768 KB Program timed out
5 Incorrect 371 ms 5772 KB Output isn't correct
6 Execution timed out 1000 ms 5768 KB Program timed out
7 Execution timed out 1000 ms 5768 KB Program timed out
8 Execution timed out 1000 ms 5768 KB Program timed out
9 Execution timed out 1000 ms 5768 KB Program timed out
10 Execution timed out 1000 ms 5768 KB Program timed out
11 Execution timed out 1000 ms 5768 KB Program timed out
12 Execution timed out 1000 ms 5768 KB Program timed out
13 Execution timed out 1000 ms 5768 KB Program timed out
14 Execution timed out 1000 ms 5768 KB Program timed out
15 Execution timed out 1000 ms 5768 KB Program timed out
16 Execution timed out 1000 ms 5768 KB Program timed out
17 Execution timed out 1000 ms 5768 KB Program timed out