C++ 0分求助
  • 板块P1589 泥泞路
  • 楼主Ian_NIE
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/6/21 22:02
  • 上次更新2024/6/21 22:05:35
查看原帖
C++ 0分求助
602171
Ian_NIE楼主2024/6/21 22:02
#include <iostream>
#include <algorithm>
#define int long long
using namespace std;

int n, l, ans;
struct node
{
	int a, b;
} c[10005];

bool cmp(node x, node y)
{
	return x.a < y.a;
}

signed main()
{
	cin >> n >> l;
	for(int i = 1; i <= n; i++)
		cin >> c[i].a >> c[i].b;
	sort(c + 1, c + n + 1, cmp);
	for(int i = 1; i <= n; i++)
		if(!((c[i].b - c[i].a + 1) % l))
			ans += (c[i].b - c[i].a + 1) / l;
		else if(c[i].b + 1 == c[i + 1].a)
			ans += (c[i].b - c[i].a + 1) / l + 1, c[i + 1].a += (c[i].b - c[i].a + 1) % l;
		else ans += (c[i].b - c[i].a + 1) / l + 1;
	cout << ans << endl;
	
	return 0;
 } 

谢谢

2024/6/21 22:02
加载中...