在下面评论
2026-07-14 16:43:38
发布于:浙江
47阅读
0回复
0点赞
T3怎么做???
全部评论 5
sss
2026-07-17 来自 浙江
1sss
2026-07-17 来自 浙江
1#include<bits/stdc++.h>
using namespace std;
int n,v,m,vv[2005],mm[2005],w[2005],dp[105][105];
int main()
{
scanf("%d%d%d",&n,&v,&m);
for(int i=1;i<=n;i++) scanf("%d%d%d",vv+i,mm+i,w+i);
for(int i=1;i<=n;i++)
for(int j=v;j>=vv[i];j--)
for(int k=m;k>=mm[i];k--)
dp[j][k]=max(dp[j][k],dp[j-vv[i]][k-mm[i]]+w[i]);
printf("%d",dp[v][m]);
return 0;
}2026-07-14 来自 浙江
1#include<bits/stdc++.h> #define int long long using namespace std; int n,a[20005],fa[20001],ans; struct node{ int u,v,w; }; bool operator<(node a,node b){ return a.w>b.w; } int find(int x){ if(x==fa[x])return x; return fa[x]=find(fa[x]); } priority_queue<node> q; void f(){ while(!q.empty()){ node p=q.top();q.pop(); if(find(p.u)!=find(p.v)){ fa[find(p.v)]=find(p.u); ans=p.w; } } } signed main(){ // freopen("StrongMan.in","r",stdin); // freopen("StrongMan.out","w",stdout); cin>>n; for(int i=1;i<=n;i++){ cin>>a[i]; } for(int i=1;i<=n;i++){ for(int j=1;j<=n;j++){ q.push({i,j,__gcd(a[i],a[j])}); } } f(); cout<<ans; return 0; }帮我调下代码
2026-07-21 来自 浙江
0















有帮助,赞一个