C++WA30求助
查看原帖
C++WA30求助
722468
MrJC_Pandingding楼主2023/5/21 09:41
#include<bits/stdc++.h>
using namespace std;
struct node
{
	int lt,rt;
}nd;
int i,j,n;
unsigned sumn;
vector<node>v;
int main()
{
	scanf("%d",&n);
	for(i=1;i<=n;++i)
	{
		scanf("%d%d",&nd.lt,&nd.rt);
		v.push_back(nd);
	}
	for(i=0;i<=v.size()-1;++i)
	{
		if(v[i].lt==v[i].rt)
		{
			v.erase(v.begin()+i--);
			continue;
		}
		for(j=i+1;j<=v.size()-1;++j)
		{
			if(v[i].lt<=v[j].lt&&v[j].lt<=v[i].rt||v[j].lt<=v[i].lt&&v[i].lt<=v[j].rt)
			{
				v[i].lt=min(v[i].lt,v[j].lt);
				v[i].rt=max(v[i].rt,v[j].rt);
				v.erase(v.begin()+j--);
			}
		}
	}
	for(i=0;i<=v.size()-1;++i)
		sumn+=1ll*v[i].rt-1ll*v[i].lt;
	printf("%u",sumn);
	return 0;
}

结果,悬赏关注

2023/5/21 09:41
加载中...