普及组—2023年2.15日打卡

_谦言万语 2023-02-15 21:32:28

T1

#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
const int N=1005;
int n,m,maxn;
int dp[N],s[N];
int v[N][N],w[N][N];

int main()
{
	cin>>m>>n;
	for(int i=1; i<=n; i++)
	{
		int a,b,c;
		cin>>a>>b>>c;
		s[c]++;//s存每一组有几个
		v[c][s[c]]=a, w[c][s[c]]=b;
		maxn=max(maxn,c); 
	}
	
	for(int i=1; i<=maxn; i++)
		for(int j=m; j>=0; j--)
			for(int k=1; k<=s[i]; k++)
				if(j>=v[i][k]) dp[j]=max(dp[j],dp[j-v[i][k]]+w[i][k]);
				
	cout<<dp[m];
	return 0;
}

T2

#include <iostream>
using namespace std;
const int N=1005;
long long n,cnt;
int pri[N];
bool st[N];
long long dp[N];//合成n的方案数 
void prime()
{
	for(int i=2; i<=n; i++)
	{
		if(!st[i]) pri[cnt++]=i;
		for(int j=0; pri[j]<=n/i; j++)
		{
			st[i*pri[j]]=true;
			if(i%pri[j]==0) break;
		}
	}
}

int main()
{
	int ans=0;
	cin>>n;
	prime();
	dp[0]=1;
	for(int i=2; i<=n; i++)
	{
		if(!st[i])
		{
			for(int j=i; j<=n; j++)
				dp[j]+=dp[j-i];
		}
	}
	cout<<dp[n];
	return 0; 
}
...全文
17 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

51,724

社区成员

发帖
与我相关
我的任务
社区描述
和众多高校算法内卷分子,一起学习和交流算法那。浓郁的算法交流氛围,拒绝躺平,有效内卷。加入我们,私信我拉你入核心内卷群。
算法数据结构leetcode 个人社区
社区管理员
  • 执 梗
  • Dream-Y.ocean
  • ღCauchyོꦿ࿐
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

 刷题!

试试用AI创作助手写篇文章吧