比赛 2025.10.18 评测结果 EEEEEEEEEE
题目名称 Willem, Chtholly and Seniorious 最终得分 0
用户昵称 梦那边的美好TT 运行时间 1.856 s
代码语言 C++ 内存使用 3.85 MiB
提交时间 2025-10-18 11:50:57
显示代码纯文本
#include<bits/stdc++.h>
#define ll long long
using namespace std;
int n,m,a[100001],op,l,r,x,y;
ll fp(int xx,int yy,int mod){
    ll ans=1;
    while(yy>0){
        if(yy%2==1) ans=ans*xx%mod;
        yy/=2;
        xx=xx*xx%mod;
    }
    return ans%mod;
}
int main(){
	freopen("kdl.in","r",stdin);
	freopen("kdl.out","w",stdout);
	cin>>n>>m;
	for(int i=1;i<=n;i++) cin>>a[i];
	while(m--){
	    cin>>op>>l>>r>>x;
	    if(op==1) for(int i=l;i<=r;i++) a[i]+=x;
	    else if(op==2) for(int i=l;i<=r;i++) a[i]=x;
	    else if(op==3){
	        vector<int> b;
	        for(int i=l;i<=r;i++) b.push_back(a[i]);
	        sort(b.begin(),b.end());
	        cout<<b[x-1]<<endl;
        }else{
            cin>>y;
            ll fz=0;
            for(int i=l;i<=r;i++) fz=(fz+fp(a[i],x,y))%y;
            cout<<fz<<endl;
        }
    }
	return 0;
}