不知道为什么CE了
  • 板块灌水区
  • 楼主wydqwq
  • 当前回复5
  • 已保存回复5
  • 发布时间2024/8/29 22:37
  • 上次更新2024/8/30 11:08:32
查看原帖
不知道为什么CE了
1392937
wydqwq楼主2024/8/29 22:37

本人在写自己编的题的std时突然发现CE了,求问大佬为啥,显示的是在判断map那行错了

#include<iostream>
#include<map>
#include<vector>
using namespace std;
const int N=4e3;
int n;
int k[N],b[N];
struct kb{
	double x,y;
};
map<kb,int> mp;
vector<kb> vec;
void in(string s,int &k,int &b){
	if(s[2]=='-'){
		k=-int(s[3]-48);
		if(s[5]=='-'){
			b=-int(s[6]-48);
		}else b=int(s[5]-48);
	}else{
		k=int(s[2]-48);
		if(s[4]=='-'){
			b=-int(s[5]-48);
		}else b=int(s[5]-48);
	}
}
int main(){
    cin>>n;
    for(int i=1;i<=n;i++){
    	string s;
    	cin>>s;
    	in(s,k[i],b[i]);
	}
	for(int i=1;i<=n;i++){
		for(int j=i+1;j<=n;j++){
			double x,y;
			if(k[i]==k[j]) continue;
			x=(b[j]-b[i])*1.0/(k[i]-k[j]);
			y=k[i]*x+b[i];
			kb p={x,y};
			if(mp[p]==0){
				mp[p]=1;
				vec.push_back(p);
			}
		}
	}
    return 0;
}
2024/8/29 22:37
加载中...