OJ Primed Subsequence

news2025/2/12 0:33:32

原题链接:传送锚点

1.题目

Description

        Given a sequence of positive integers of length n, we define a primed subsequence as a consecutive subsequence of length at least two that sums to a prime number greater than or equal to two.
        For example, given the sequence:
                                                                3 5 6 3 8

        There are two primed subsequences of length 2 (5 + 6 = 11 and 3 + 8 = 11), one primed subsequence of length 3 (6 + 3 + 8 = 17), and one primed subsequence of length 4 (3 + 5 + 6 + 3 = 17).


Input
        Input consists of a series of test cases. The first line consists of an integer t (1 < t < 21), the number of test cases. Each test case consists of one line. The line begins with the integer n, 0 < n < 10001, followed by n non-negative numbers less than 10000 comprising the sequence. You should note that 80% of the test cases will have at most 1000 numbers in the sequence.


Output
        For each sequence, print the ‘Shortest primed subsequence is length x:’, where x is the length of the shortest primed subsequence, followed by the shortest primed subsequence, separated by spaces. If there are multiple such sequences, print the one that occurs first. If there are no such sequences, print ‘This sequence is anti-primed.’.


Sample Input

3
5 3 5 6 3 8
5 6 4 5 4 12
21 15 17 16 32 28 22 26 30 34 29 31 20 24 18 33 35 25 27 23 19 21


Sample Output

Shortest primed subsequence is length 2: 5 6
Shortest primed subsequence is length 3: 4 5 4
This sequence is anti-primed.

2.中文翻译

题目描述

给定长度为n的正整数序列,我们将素数子序列定义为长度至少为2的连续子序列,而且其和为大于或等于2的素数。

例如,给定序列:

3 5 6 3 8

有两个长度为2(5+6+11和3+8=11)的素数子序列,一个长度为3(6+3+8=17)的素数子序列,和一个长度4(3+5+6+3=17)的素数子序列。

输入

        输入由一系列测试用例组成。第一行包含一个整数t(1<t<21),即测试用例的数量。每个测试用例由一行组成。该行以整数n开始,0<n<10001,后跟n个小于10000的非负数,构成序列。您应该注意,80%的测试用例在序列中最多有1000个数字。

输出

        对于每个序列,打印 ‘Shortest primed subsequence is length x:’ ,其中x是最短素数子序列的长度,后面是最短的素数子序列,用空格分隔。如果有多个这样的序列,请打印最先出现的序列。如果没有这样的序列,请打印 ‘This sequence is anti-primed.’ 。

样例输入

3
5 3 5 6 3 8
5 6 4 5 4 12
21 15 17 16 32 28 22 26 30 34 29 31 20 24 18 33 35 25 27 23 19 21

样例输出

Shortest primed subsequence is length 2: 5 6
Shortest primed subsequence is length 3: 4 5 4
This sequence is anti-primed.

3.思路

        AC办法: 欧拉筛:传送锚点

        一般办法:素数判定用埃氏就够了

4.代码

import math
#素数判定
def isprime(num):
    if num<2:
        return False
    else:
        for i in range(2,int(math.sqrt(num))+1):
            if num%i==0:
                return False
        return True

#计算最短序列长度并给出第一个出现的最短序列
def shortest_subsequense(seq):
    shortest = float("inf")
    result=[]
    for i in range(len(seq)):
        sum1=seq[i]
        for j in range(i+1,len(seq)):
            sum1 += seq[j]
            subseq=seq[i:j+1]
            if sum1>=2 and isprime(sum1) and len(subseq)<shortest:
                shortest=len(subseq)
                result=subseq
    return (shortest,result)

#主程序
t = int(input())
for i in range(t):
    n,*seq=map(int,input().split())
    (shortestlen,result) =shortest_subsequense(seq)
    if shortestlen == float("inf"):
        print("This sequence is anti-primed.")
    else:
        print("Shortest primed subsequence is length {}: {}".format(shortestlen," ".join(map(str,result))))

5.知识点

        5.1 join方法的使用

a=[1,2,3,4,5]
print("连接符".join(map(str,a)))

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/640187.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【嵌入式IMAGE 3】opencv的搭建

1. OpenCV源代码下载地址 https://opencv.org/releases/ 2. 在windows平台编译&#xff08;mingw版本&#xff09; 2.1 下载cmake https://cmake.org/files/ 2.2 配置编译器环境变量 2.3 打开cmake-gui.exe a.Use default native compilers 使用默认的本机编译器 b.Specify n…

MyBatis(全)

文章目录 什么是MyBatis?MyBatis快速入门查询user表中所有数据 Mapper代理开发使用Mapper代理方式完成入门案例 MyBatis核心配置文件配置文件完成增删改查案例&#xff1a;完成品牌数据的增删改查操作准备环境查询-查询所有数据查询-查看详情查询-条件查询--1.多条件查询方法1…

css移动端

目录 谷歌模拟器 屏幕分辨率 视口 二倍图 适配方案 rem 简介 问题 媒体查询 移动端 设备宽度不同&#xff0c;HTML标签字号设置多少合适 flexible.js rem-移动端适配 less 注释 运算 嵌套 变量 导入 导出 禁止导出 谷歌模拟器 模拟移动设备&#xff0c;方…

MySQL Community Server的安装配置教程(Windows版本)

&#xff08;1&#xff09;了解MySQL Community Server&#xff1a; MySQL Community Server是开源的MySQL数据库服务的名称。它是MySQL AB在2000年推出的一个开源数据库服务器&#xff0c;现在由Oracle公司维护和管理。 MySQL Community Server是一个关系型数据库系统&#…

通讯录管理系统(cpp)

一 系统需求 主要用C来实现一个通讯录管理系统 需要包含以下功能 添加联系人&#xff1a;向通讯录中添加新人&#xff0c;信息包括姓名、性别、年龄、联系电话、家庭住址&#xff0c;最多记录1000人显示联系人&#xff1a;显示通讯录中所有联系人信息删除联系人&#xff1a;按…

【Spring】— 动态SQL :MyBatis的关联映射

目录 MyBatis的关联映射1、关联关系概述2、MyBatis中的关联关系2.1 一对一2.2 一对多2.3 多对多 MyBatis的关联映射 在实际应用中&#xff0c;对数据库的操作会涉及多张表&#xff0c;这在面向对象中就涉及对象与对象之间的关联关系。针对多表之间的操作&#xff0c;MyBatis提…

全志V3S嵌入式驱动开发(wifi驱动)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 荔枝派上面除了支持v3s自带的有线网口&#xff0c;还带有一个支持sd协议的esp 8089 wifi模块。有了这个模块&#xff0c;v3s没有网线&#xff0c;也…

chatgpt赋能python:Python程序与SEO:如何建立程序使您的网站优化更好

Python程序与SEO&#xff1a;如何建立程序使您的网站优化更好 今天&#xff0c;越来越多的网站和在线业务转向搜索引擎优化&#xff0c;以吸引更多访问者和客户。Python编程语言是一种快速、灵活、易于学习的工具&#xff0c;如果正确使用它可以使您的网站SEO更好。下面我们来…

【从删库到跑路】MySQL系列——数据库的介绍MySQL的启动

&#x1f38a;专栏【MySQL】 &#x1f354;喜欢的诗句&#xff1a;更喜岷山千里雪 三军过后尽开颜。 &#x1f386;音乐分享【如愿】 大一同学小吉&#xff0c;欢迎并且感谢大家指出我的问题&#x1f970; 文章目录 &#x1f354;什么是数据库⭐组成⭐数据库的优势 &#x1f35…

Spring Security--自动登录

也就是remember me 在配置链上加一个 然后发送请求时加上:remember-me字段 value值可以为&#xff0c;ture&#xff0c;1&#xff0c;on 我们记住登录后&#xff0c;关掉浏览器再打开&#xff0c;访问一下接口&#xff0c;可以访问&#xff0c;说明记住登录成功了。 因为有的…

Spring中Bean的生命 周期与作用域

文章目录 前言Bean的作用域概念Bean作用域类型1. singleton&#xff1a;单例作⽤域2. prototype&#xff1a;原型作⽤域&#xff08;多例作⽤域&#xff09;3. request&#xff1a;请求作⽤域4. session&#xff1a;回话作⽤域5. application&#xff1a;全局作⽤域6. websocke…

51单片机实训项目之“红外控制小风扇”代码详解

本代码实现的功能是通过红外遥控来控制风扇的转速。废话不多说&#xff0c;直接上代码。 另外补充一点红外通信的原理&#xff1a; 红外接收 NEC协议&#xff1a; 数据格式 发射端的方波图&#xff0c;接收端的正好与之相反&#xff0c;数据传输从最低位开始 NEC 标准下…

mqtt.fx连接阿里云物联网平台

这里写目录标题 注册公共示例创建产品添加设备创建云产品流转生成基本信息配置mqtt.fx客户端数据传送 前提条件&#xff1a;下载mqtt.fx软件&#xff0c;以及注册好阿里云物联网平台账号 本实验用两个mqtt.fx客户端接入阿里云物联网平台&#xff0c;来实现不同设备间消息的传输…

大数据Doris(四十):Routine Load基本原理和语法介绍

文章目录 Routine Load基本原理和语法介绍 一、基本原理 二、Routine Load 语法 Routine Load基本原理和语法介绍 例行导入(Routine Load)功能,支持用户提交一个常驻的导入任务,通过不断的从指定的数据源读取数据,将数据导入到 Doris 中。目前Rou

chatgpt赋能python:如何使用Python获取Listview

如何使用Python获取Listview 在现代数据驱动的世界中&#xff0c;处理大量数据已经成为一项关键技能。准确地说&#xff0c;操作大量数据要比操作一小部分数据要困难得多。Python是一门非常出色的编程语言&#xff0c;它的处理大量数据的能力无人能敌。在这篇文章中&#xff0…

MySQL面试题详解

优化 如何定位慢查询 mysql中慢查询通常发生在以下几种情况&#xff0c;聚合查询&#xff0c;多表查询&#xff0c;表数据量过大查询&#xff0c;深度分页查询。 表象&#xff1a;页面加载过慢&#xff0c;接口压测响应时间过长(超过1s) 定位慢查询的方法主要有两种。方法一…

Windows 下编译 OpenCV 和 OpenCV-contrib

文章目录 导言环境准备源码获取环境获取 配置 CMake 并编译ConfigureGenerate 生成项目总结 导言 在本文中&#xff0c;我们将介绍如何在 Windows 系统下编译 OpenCV 和 OpenCV-contrib。OpenCV 是一个开源的计算机视觉库&#xff0c;它包含了许多图像处理和计算机视觉的功能。…

gismo调试-组总刚

文章目录 前言一、1 组总刚main文件的断点2 跳转到gsElasticityAssembler.hpp3 gsElasticityAssembler.hpp的177行进入gsVisitorLinearElasticity.h4 进入gsAssembler.h重新进入gsVisitorLinearElasticity.h进入gsSparseSystem.h1.14 进入gsAssembler.h1.21.31.4 二、2.12.22.3…

Cracking C++(11): CMake代码高亮调研

文章目录 1. 目的2. VSCode 插件CMake 和 CMake ToolsCMake Language SupportCMake Highlights 3. JetBrains 系列3.1 CLion3.2 Fleet 4. Kate5. Sublime Text6. 总结 1. 目的 CMake 已经是开源 C 项目的主流 building system&#xff0c; 这里简单调研关注的编辑器 / IDE 下&…

Jetson nano 进阶教程4_通过IIC输出PWM

Jetson nano 进阶教程4_通过IIC输出PWM Jetson nano的40PIN不能直接发出PWM波&#xff0c;在很多控制舵机&#xff0c;电机调速方面很不方便&#xff0c;因此利用一块PCA9685模块&#xff0c;通过I2C总线控制PCA9685输出pwm波&#xff0c;并且可以调整占空比。 How do I use P…