求条
  • 板块灌水区
  • 楼主Ethan_tang
  • 当前回复4
  • 已保存回复4
  • 发布时间2025/1/13 11:28
  • 上次更新2025/1/13 16:28:31
查看原帖
求条
1491661
Ethan_tang楼主2025/1/13 11:28

P2357,蒟蒻不会线段树&分块,最后一个点TLE,80pts,(代码吸氧)

#include <iostream>
using namespace std;
long long n,f,num[200005];
int main()
{
	cin >> n >> f;
	for (int i = 1;i <= n;i++)
	{
		cin >> num[i];	
	}
	for (int i = 0;i < f;i++)
	{
		int x;
		cin >> x;
		if (x == 1)
		{
			long long l,r,k;
			cin >> l >> r >> k;
			for (int j = l;j <= r;j++)
			{
				num[j] += k;
			}	
		}
		if (x == 2)
		{
			long long k;
			cin >> k;
			num[1] += k;	
		}
		if (x == 3)
		{
			long long k;
			cin >> k;
			num[1] -= k;	
		}
		if (x == 4)
		{
			long long l,r,he = 0;
			cin >> l >> r;
			for (int j = l;j <= r;j++)
			{
				he += num[j];
			}
			cout << he << endl;
		}
		if (x == 5)
		{
			cout << num[1] << endl;	
		}
	}
	return 0;
}
2025/1/13 11:28
加载中...