60求助
  • 板块P1483 序列变换
  • 楼主Druid
  • 当前回复2
  • 已保存回复2
  • 发布时间2024/7/14 08:34
  • 上次更新2024/7/14 10:19:45
查看原帖
60求助
431095
Druid楼主2024/7/14 08:34
#include <bits/stdc++.h>
using namespace std;
int n,m,a[114514191],b[114514191];
int main()
{
	cin>>n>>m;
	for(int i=1;i<=n;i++)
		cin>>a[i];
	int x,y;
	for(int i=1;i<=m;i++)
	{
		cin>>x;
		if(x==1)
		{
			cin>>x>>y;
			b[x]+=y;
		}
		else
		{
			int fd,ans;
			cin>>fd;
			if(fd==0)
			{
				cout<<0;
				continue;
			}
			ans=a[fd];
			for(int j=1;j*j<=fd;j++)
			{
				if(fd%j==0)
				{
					ans+=b[j];
					if(j*j!=fd)
						ans+=b[fd/j];
				}
			}
			cout<<ans<<"\n";
		}
	}
	return 0;
}
2024/7/14 08:34
加载中...