- 题源:I - In Search of the Ultimate Artifact
- Abstract: 个非负整数构成的数组 ,可任选 个融合为一个新数,新数为 。求进行若干次(可为0次)融合后的最大值。答案对 取模。
- Keyword:贪心(签到题)
- Solution:观察合并操作,发现本质上每次在减少 个元素。因此采用堆进行维护,贪心的先默认答案为堆顶,每次取出堆中 个元素对答案相乘即可。注意每次相乘都需要进行取模操作。
- Code:
#include<bits/stdc++.h>
using namespace std;
using ll=long long;
#define int ll
#define endl "\n"
const int MOD=998244353;
void solve(){
int n,k;cin>>n>>k;
priority_queue<int>pq;
while(n--){
int _;cin>>_;
if(_) pq.push(_);
}
int ans=0;
if(pq.size()){
ans=pq.top();
ans%=MOD;
pq.pop();
}
while(pq.size()>=k-1){
for(int i=0;i<k-1;i++){
int _=pq.top();
_%=MOD;
ans*=_;
ans%=MOD;
pq.pop();
}
}
cout<<ans%MOD<<'\n';
}
signed main(){
ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
int t;cin>>t;
while(t--) solve();
return 0;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具