QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#385000#3769. 共线点ucup-team1251AC ✓12ms3720kbC++171008b2024-04-10 14:33:172024-04-10 14:33:17

Judging History

This is the latest submission verdict.

  • [2024-04-10 14:33:17]
  • Judged
  • Verdict: AC
  • Time: 12ms
  • Memory: 3720kb
  • [2024-04-10 14:33:17]
  • Submitted

answer

#include<iostream>
#include<string.h>
#include<stdio.h>
#include<map>
#include<vector>
#include<queue>
#include<stack>
#include<math.h>
#include<set>
#include<bitset>
#include<deque>
#include<unordered_map>
#include<algorithm>
#define int long long
using namespace std;
typedef pair<int,int>PII;
const int N=2e5+10,M=5e2+10;

struct le{
	double a,b,y;
}ll[5];

bool cmp(le a,le b){
	return a.y>b.y;
}

signed main(){
	ios::sync_with_stdio(false);
	cin.tie();
	cout.tie();
	while(cin>>ll[1].a){
		cin>>ll[1].b>>ll[1].y;
		for(int i=2;i<=3;i++){
			cin>>ll[i].a>>ll[i].b>>ll[i].y;
		}
		sort(ll+1,ll+4,cmp);
		double x1,x2;
		x1=(double)(ll[3].y-ll[1].y)*(ll[1].b-ll[2].a)/(ll[1].y-ll[2].y)+(double)ll[1].b;
		x2=(double)(ll[3].y-ll[1].y)*(ll[1].a-ll[2].b)/(ll[1].y-ll[2].y)+(double)ll[1].a;
		double mi=min(x1,x2);
		double ma=max(x1,x2);
//		if(mi<=ll[3].b){
			if(mi>ll[3].a){
				swap(mi,ll[3].a);
				swap(ma,ll[3].b);

			}
			if(ma>=ll[3].a) cout<<"Yes\n";
			else cout<<"No\n";			
//		}
	}
	return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 12ms
memory: 3720kb

input:

0 1 0
0 1 1
0 1 2
0 1 0
1 2 1
0 1 2
0 1 0
2 3 1
0 1 2
3 8 2
5 7 4
2 8 7
2 7 1
1 3 3
0 8 4
4 6 1
1 3 3
2 9 4
0 9 1
0 3 6
2 9 9
0 6 3
4 6 5
1 2 7
6 9 4
4 7 6
1 8 9
0 6 5
0 6 6
0 8 7
4 7 2
6 8 4
2 5 8
5 6 1
6 9 2
1 5 9
3 5 1
2 8 2
3 4 6
5 8 2
1 6 3
8 9 7
1 7 2
4 7 6
2 9 9
5 6 3
0 7 5
2 4 8
0 3 1
2 9 3
...

output:

Yes
Yes
No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
No
Yes
Yes
Yes
Yes
Yes
No
No
Yes
Yes
No
Yes
Yes
No
Yes
Yes
Yes
Yes
Yes
No
Yes
Yes
No
Yes
No
Yes
Yes
Yes
Yes
Yes
Yes
No
Yes
Y...

result:

ok 10000 lines