30分求助!!!
查看原帖
30分求助!!!
965334
1_1_1_1_1_1_楼主2023/8/12 20:26

那位dalao能帮我看看

a数组中1表示树,0表示什么也没有

10表示树苗,-10表示肿了树苗又砍掉了

#include<bits/stdc++.h>

using namespace std;

int l, n;

int a[10001];

int main()
{
	int i, j;
	int x, y;
	int cnt1, cnt2;
	int num;
	
	cin >> l >> n;
	cnt1 = 0, cnt2 = 0;
	for(i = 0; i <= l; i++)
	{
		a[i] = 1;
	}
	for(i = 0; i < n; i++)
	{
		cin >> num;
		cin >> x >> y;
		if(num == 0)
		{
			for(j = x; j <= y; j++)
			{
				if(a[j] == 1)
				{
					a[j] = 0;
				}
				else if(a[j] == 10)
				{
					a[j] = -10;
				}
			}
		}
		else
		{
			for(j = x; j <= y; j++)
			{
				if(a[j] != 1 || a[j] != 10)
				{
					a[j] = 10;
				}
			}
		}
	}
	for(i = 0; i <= l; i++)
	{
		if(a[i] == 10)
		{
			cnt1++;
		}
		else if(a[i] == -10)
		{
			cnt2++;
		}
	}
	cout << cnt1 << endl;
	cout << cnt2 << endl; 
}
2023/8/12 20:26
加载中...