洛谷P1036 选数

优刻得首个「国产千卡智算集群」落地,支持智源千亿大模型训练 在人工智能引领的时代浪潮中,算力已成为技术进步与创新的核心驱动力。面对当下AI算力需求的飙升、高端AI芯片供应受限的挑战,加之OpenAI带来的技术封锁,唯有坚定不移的发展自主可控的国产技术方案,持续壮大国产智算集群规模,才能一路突破围追堵截,进一步促进国产大模型产业生态繁荣。集群还提供了完善高效的软件栈工具,集成多种主流的深度学习编程框架,通过测试验证,确保了对行业领先人工智能模型的高效支持,做到开箱即用,用户可快速投入模型的开发和部署,加速了其在人工智能领域的布局和发展。方面取得了显著成效。 阅读详情

题目链接:https://www.luogu.org/problemnew/show/1036

题目描述:

已知 n 个整数 x1,x2,…,xn,以及一个整数 k(k<n)。从 n 个整数中任选 k 个整数相加,可分别得到一系列的和。例如当 n=4,k=3,4 个整数分别为 3,7,12,19 时,可得全部的组合与它们的和为:

3+7+12=22

3+7+19=29

7+12+19=38

3+12+19=34。

现在,要求你计算出和为素数共有多少种。(n <=20)

 

分析:因为n <= 20, 所以暴力即可。

#pragma GCC optimize(3)
#include<bits/stdc++.h>
#define mst(a,b) memset(a,b,sizeof(a))
#define For(i, k, j) for(int i = (k); i <= (j); i++)
#define INF 2147483647/3
#define ll long long
using namespace std;
inline int read()
{
    int num = 0, flag = 1;
    char c=' ';
    for(;c>'9'||c<'0';c=getchar()) if(c=='-') flag = -1;
    for(;c>='0'&&c<='9';num=(num<<1)+(num<<3)+c-48,c=getchar());
    return num * flag;
}
#define N 25
int a[N];
bool p[N];
int n, k;
int ans = 0;
inline bool isprime(int a) {//质数判断
    if(a == 1) return 0;
    if(a == 2 || a == 3) return 1;
    if(a%6 != 1 && a%6 != 5) return 0;
    int g = sqrt(a);
    for(int i = 5; i <= g; i += 6) {
        if(!(a%i)|| !(a%(i+2))) return 0;
    }
    return 1;
}
void dfs(int s) {//暴力搜索
	if(s == n + 1) {
		int sum = 0;
		For(i, 1, n) {
			if(p[i]) sum++;
		}
		if(sum == k) {
			sum = 0;
			For(i, 1, n) {
				if(p[i]) sum += a[i];
			} 
			if(isprime(sum)) {
				ans++;
			} 
		}
		return;
	}
	p[s] = 1;
	dfs(s + 1);
	p[s] = 0;
	dfs(s + 1);
}
int main()
{
	n = read(), k = read();
	For(i, 1, n) {
		scanf("%d", &a[i]);
	}
	dfs(1);
	printf("%d\n", ans);
    return 0;
}


说实话,我已经快一个月没有打深搜了,居然还可以一遍过。

 

如何下载安装Qt各个版本?(2025-4-28更新) 本文将教您快速获取Qt各版本安装包!妈妈再也不用担心我找不到Qt安装包了! 阅读详情

相关推荐

Stable Diffusion跑图总爆显存?别急着换显卡,试试这个PYTORCH_CUDA_ALLOC_CONF参数调优

本文深入解析了Stable Diffusion运行中常见的显存不足问题,特别是由显存碎片化导致的假性OOM现象。通过详细讲解PYTORCH_CUDA_ALLOC_CONF参数中的max_split_size_mb设置技巧,提供了一套完整的显存优化方案,帮助用户在无需升级硬件的情况下显著提升AI绘画的稳定性与效率。

weixin_42524100的博客 347

C语言题目:k个n相加

已知n 个整数 x1,x2,⋯ ,xn,以及 1 个整数 k(k

Kuluha的博客 1055

Windows下RISC-V开发环境搭建:xpack-riscv-none-elf-gcc安装配置全攻略

本文详细介绍了在Windows平台下搭建RISC-V开发环境的完整流程,重点讲解xpack-riscv-none-elf-gcc工具链的安装配置方法。从环境变量设置到VSCode集成开发环境搭建,涵盖汇编程序和C程序开发实践,为开发者提供一站式解决方案,助力快速掌握RISC-V架构开发技能。

weixin_26765287的博客 438

递归函数例题——选数

原题: 题目描述已知 n个整数 x1,x2,…,xn以及1个整数k(k<n)。从n个整数中任选k个整数相加,可分别得到一系列的和。例如当n=4,k=3,4个整数分别为3,7,12,19时,可得全部的组合与它们的和为:3+7+12=22 3+7+19=29 7+12+19=38 3+12+19=34。 现在,要求你计算出和为素数共有多少种。例如上例,只有一种的和为素数:3+7+19=29...

qq_43771635的博客 1995

SRS(简单实时视频服务) 笔记(5)- 视频录制

在SRS使用中实现视频录制功能。

irainsa的博客 1700

spark3.x 写入hudi报错

【代码】spark3.x 写入hudi报错。

W2484980893的博客 1578

选数(DFS)

选数 题目描述 已知 n 个整数 x1,x2,…,xn,以及一个整数 k(k<n)。从 n 个整数中任选 k 个整数相加,可分别得到一系列的和。例如当 n=4,k=3,4 个整数分别为 3,7,12,19 时,可得全部的组合与它们的和为:3+7+12=22 3+7+19=29 7+12+19=38 3+12+19=34。现在,要求你计算出和为素数共有多少种。例如上例,只有一种的和为素数:3+7+1...

我很菜的好吧 2264

【异常】Claude Code 在 Windows CMD 中出现重影现象的排查与解决

Windows CMD运行Claude Code时出现文字重影、乱码等问题,原因是传统CMD对现代ANSI终端控制序列支持不足。解决方案包括:1)推荐安装Windows Terminal(完全支持ANSI标准);2)使用PowerShell 7;3)优化CMD设置(启用虚拟终端、UTF-8编码);4)关闭Claude Code视觉特效。建议优先使用Windows Terminal以获得最佳体验,这是最彻底的解决方案。其他方案仅能部分改善或缓解问题。

奶爸的编程之路,也就一周冷个三天 1964

选数

题目描述 已知nn个整数 x1,x2,…,xnx1,x2,…,xn,以及一个整数k(k<n)k(k<n)。 从nn个整数中任选kk个整数相加,可分别得到一系列的和。 例如当n=4,k=3n=4,k=3,44个整数分别为 3,7,12,193,7,12,19时,可得全部的组合与它们的和为: 3+7+12=22 3+7+19=29 7+12+19=38 3+12+19=34 现在,要求...

weixin_42696809的博客 1977

phpMyAdmin | mysqli::real_connect(): (HY000/2002): No such file or directory

第一次安装宝塔mysql服务是默认关闭的,需要手动打开,打开服务再次进入phpMyAdmin发现可以进入了。

吻等离子的博客 2872

YOLOv9改进策略【Neck】| GSConv+Slim Neck:混合深度可分离卷积和标准卷积的轻量化网络设计

实时检测器架构的轻量级设计GsConv。

Limiiiing的博客 1366

P1036选数

P1036 选数 题目描述 已知 n 个整数 x1,x2,…,xn,以及一个整数 k(k<n)。从 n 个整数中任选 k 个整数相加,可分别得到一系列的和。例如当 n=4,k=3,4 个整数分别为 3,7,12,19 时,可得全部的组合与它们的和为: 3+7+12=22 3+7+19=29 7+12+19=38 3+12+19=34 现在,要求你计算出和为素数共有多少种。 例如上例,只有一种的和...

ZJX_103的博客 1478

仿真学习系列(三十八):Sigrity仿真之单端S参数提取

S 参数(Scattering Parameters)是高速信号分析中最基础也最常用的指标,能够全面表征走线、过孔、连接器等互连结构的高频行为。在 Sigrity PowerSI 中,Model Extraction 是最常用的 S 参数提取方式,适用于高速差分线、单端线、过孔、参考平面等各种拓扑结构。 本节将通过示例讲解如何在 PowerSI 中完成一次完整的 S 参数提取流程,包括:对象选择、端口设置、频率范围配置以及结果查看。掌握此方法后,即可对任意高速网络执行阻抗、插损、回损、串扰分析,为进一步的

案例文章,高速信号 838

洛谷 P1036 选数 C语言实现

P1036 选数 - 洛谷 题目描述 已知 n 个整数 x1,x2,…,xn ,以及1个整数k(k&amp;lt;n)。从n个整数中任选k个整数相加,可分别得到一系列的和。例如当n=4,k=3,4个整数分别为3,7,12,19时,可得全部的组合与它们的和为: 3+7+12=22 3+7+19=29 7+12+19=38 3+12+19=34。 现在,要求你计算出和为素数共有多少种。 例如上例,只有一种的和...

RanLZ的博客 7565

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

Java实现 洛谷 P1036 选数

import java.util.Scanner; public class Main { private static Scanner cin; private static int[] numbers ; private static int counter = 0; public static void main(String args[]) throws Exceptio...

南 墙 1万+

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

洛谷P1036 选数Java题解

洛谷P1036 选数题解及其思路 思路: 1.找数,从n个数字中找k个,然后进行不同的组合,使用深搜进行查找 static void doSearch(int x,int y){ if(x>k){ if(isPrime(num)) count++; return; } ...

通往未来的路 984

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

【题解】洛谷P1036 选数

省赛之后,好长一段时间没有做过题了,本来想找道水题热热身,没想到这么一道题目都被折磨了挺久orz,真的是不能松懈啊,本来预定的省赛赛后感也鸽了…

Jourofant的博客 470

洛谷 P1036 选数(dfs)

简述题目:在n个数中选出k个数然后求和sum,看有sum为素数的个数。 主要思路:典型的dfs深度搜索

一枚射手座的程序媛 713

洛谷P1036 [NOIP 2002 普及组] 选数

已知n个整数x1​x2​⋯xn​,以及1个整数kkn从n个整数中任选k个整数相加,可分别得到一系列的和。例如当n4k34个整数分别为37121937122237192971219383121934现在,要求你计算出和为素数共有多少种。371929。

tonman7797的博客 952

洛谷 P1036 选数

洛谷 P1036 选数 Description 已知 n 个整数 x1,x2,…,以及1个整数k(k<n)。从n个整数中任选k个整数相加,可分别得到一系列的和。例如当n=4,k=3,4个整数分别为3,7,12,19时,可得全部的组合与它们的和为: 3+7+12=22 3+7+19=29 7+12+19=38 3+12+19=34 现在,要求你计算出和为素数共有多少种。 例如上例,只有一种的...

weixin_30335353的博客 160

洛谷训练 P1036 选数

洛谷训练 P1036 选数 题目描述 已知 n 个整数 x1,x2,…,xn,以及1个整数k(k&amp;lt;n)。从n个整数中任选k个整数相加,可分别得到一系列的和。例如当n=4,k=3,4个整数分别为3,7,12,19时,可得全部的组合与它们的和为: 3+7+12=22 3+7+19=29 7+12+19=38 3+12+19=34 现在,要求你计算出和为素数共有多少种。 例如上例,只有一种的和为素...

lhc121386的博客 330

洛谷—P1036 选数题解

题目:P1036 选数 题目大意: 从n个数中选出k个数,把这k个数相加得到的和是素数的情况有多少种 解题思路: 这道题的难点是如何去重。有两种方法,一是通过vis数组记录那个数已经被访问过。二是不降原则,将数字从小到大排序,保证枚举的这些数是升序排列。 代码: 题解一: #include<iostream> #include<algorithm> using namespace std; const int maxn = 1000; int n, k,a[maxn],ans,vis

NCU_tanghulu的博客 778

洛谷 P1036 递归 选数

洛谷 P1036 递归 选数 #include <stdio.h> #include <stdlib.h> int n,k,count=0; int a[22]={0}; void Fun(int number,int sum,int start);/*递归函数*/ int Judge(int n);/*判断质数*/ int main() { int i; ...

weixin_45888462的博客 263

洛谷 P1036选数|递归

洛谷P1036选数|递归 题目描述 已知 n 个整数 x1,x 2 ,…,xn​,以及1个整数k(k<nk<n)。从n个整数中任选k个整数相加,可分别得到一系列的和。例如当n=4,k=3,4个整数分别为3,7,12,19时,可得全部的组合与它们的和为: 3+7+12=22 3+7+19=29 7+12+19=38 3+12+19=34 现在,要求你计算出和为素数共有多少种。 例如上例,...

lvbcy_fairy的博客 601

洛谷 P1036.选数

洛谷 P1036.选数 题目描述 已知 n 个整数 x1,x2,…,x​,以及1个整数k(k < n)。从n个整数中任选k个整数相加,可分别得到一系列的和。例如当n=4,k=3,4个整数分别为3,7,12,19时,可得全部的组合与它们的和为: 3+7+12=22 3+7+19=29 7+12+19=38 3+12+19=34。 现在,要求你计算出和为素数共有多少种。 例如上例,只有...

TWF 261

做题笔记 递归模拟(洛谷 P1036 选数)

题目传送门 P1036 选数 不想点进链接里的话看这里 思路分析 我们来分析一下题目 题目要求是在n个数里面选k个相加等于素数,那么我们第一步就是要写好一个判断素数的函数咯 判断素数很简单,我之前在洛谷写过一个博客,大家可以去看看 判断素数最简单的三种方法,这里我就直接贴代码 //判断素数 bool isprime(int n){ for(int l=2;l<=sqrt(n);l++){...

编程笔记 394
上一篇: 费用流详解
下一篇: 高精度类模板
YLWangcpp
博客等级 码龄8年 2粉丝 12原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值