无脑暴力判断。
#include<cstdio> #include<cstring> #include<vector> #include<cmath> #include<queue> #include<list> #include<algorithm> using namespace std; struct point { long long x; long long y; }p1,p2,p3; int main() { scanf("%lld%lld",&p1.x,&p1.y); scanf("%lld%lld",&p2.x,&p2.y); scanf("%lld%lld",&p3.x,&p3.y); if(p1.x==p2.x&&p2.x==p3.x) printf("1 "); else if(p1.y==p2.y&&p2.y==p3.y) printf("1 "); else if(p1.y==p2.y&&(p3.x>=max(p1.x,p2.x)||p3.x<=min(p1.x,p2.x))) printf("2 "); else if(p3.y==p2.y&&(p1.x>=max(p3.x,p2.x)||p1.x<=min(p3.x,p2.x))) printf("2 "); else if(p1.y==p3.y&&(p2.x>=max(p1.x,p3.x)||p2.x<=min(p1.x,p3.x))) printf("2 "); else if(p1.x==p2.x&&(p3.y>=max(p1.y,p2.y)||p3.y<=min(p1.y,p2.y))) printf("2 "); else if(p3.x==p2.x&&(p1.y>=max(p3.y,p2.y)||p1.y<=min(p3.y,p2.y))) printf("2 "); else if(p1.x==p3.x&&(p2.y>=max(p1.y,p3.y)||p2.y<=min(p1.y,p3.y))) printf("2 "); else printf("3 "); return 0; }