站外题求助!!!!!!!
  • 板块灌水区
  • 楼主HarryZ
  • 当前回复0
  • 已保存回复0
  • 发布时间2023/8/22 11:16
  • 上次更新2023/11/3 02:02:40
查看原帖
站外题求助!!!!!!!
581722
HarryZ楼主2023/8/22 11:16

帮我解析一下这道题:(幸运数字)云云有n个幸运数字a[0],a[1]……,a[n-1]。此外,它定义正整数x是厄运的,当且仅当它不是任何一个幸运数字的倍数。 他想知道有多少个小于等于k的正整数是厄运的。 输入第一行给定幸运数字的个数n(1<=n<=20)和上界k(0<=k<=1000000000)。 第二行有n个数,即幸运数字a[0],a[1],……,an-1。 输出合法正整数的个数。 试补全下面程序。

#include<iostream>
using namespace std;

int n,k,a[20];
long long ans;
int get(int x,int y){
	return !x?y:__1__;
}
void dfs(int i,int s,int prod){
	if(i==n){
		ans+=__2__;
		return;
	}
	dfs(i+1,s,prod);
	if(k/prod>=a[i]/get(prod,a[i]))
		dfs(i+1,__3__,__4__);
}
int main(){
	cin>>n>>k;
	for(int i=0;i<n;i++)
		cin>>a[i];
	dfs(0,__5__,1);
	cout<<ans<<endl;
	return 0;
}

2023/8/22 11:16
加载中...