资源限制
时间限制:1.0s 内存限制:256.0MB
问题描述
  这个问题是个简单的与数论有关的题目,看起来似乎是“求正整数的所有质因子”,但实际上并不完全是这样。

本题中需要定义以下几个概念:
  1. Monday-Saturday数
  对于一个正整数N,如果它除以7得到的余数是1或6,则可以写成N=7k+{1,6}的形式。更形象的,我们把这样的N称作“Monday-Saturday数”,简称“MS数”。
  2. Monday-Saturday因子
  如果对于两个MS数a,b,若存在一个MS数x,使得ax=b,那么就称a是b的一个“Monday-Saturday因子”,简称“MS因子”。
  3. Monday-Saturday质数
  如果对于MS数a,满足a>1且除了1和a之外a没有其他的MS因子,那么称a是一个“Monday-Saturday质数”,简称“MS质数”。
  注:对于传统意义上的质数,若它是一个MS数,则它一定是一个MS质数。但反之不必成立,例如27,它是一个MS质数但不是传统意义上的质数。
  4. Monday-Saturday质因子
  如果对于两个MS数a,b,若满足a是b的MS因子且a是一个MS质数,那么称a是b的一个“Monday-Saturday质因子”。
  例如:27是216的一个MS质因子(216=27*8)。

问题就是,给定一个MS数N,求其所有的Monday-Saturday质因子。
输入格式
  每个输入数据包含多行,每行一个整数N(保证N一定是MS数,1<N<300000)。
  输入的最后一行是一个整数1(对于这一行,你不必输出任何信息)。
  每个输入数据不超过100行。
输出格式
  对于每个N输出一行,表示N的所有Monday-Saturday质因子,按从小到大的顺序输出。格式形如“N: p1 p2 p3 …… pk”,注意行末无多余空格。

【样例输入】
  205920
  262144
  262200
  279936
  299998
  1

【样例输出】
  205920: 6 8 13 15 20 22 55 99
  262144: 8
  262200: 6 8 15 20 50 57 69 76 92 190 230 475 575 874 2185
  279936: 6 8 27
  299998: 299998
数据规模和约定
  1<N<300000,每个输入数据不超过100行。
  /注意格式,我习惯按照在pta上做题的格式输出,结果一直不对,还是把样例粘贴起来看看方便点/

在这里插入代码片
#include<iostream>
#include<vector>
using namespace std;bool sign[300010] = {false};
vector<int>v;
bool check(int x)
{if(!sign[x])return false;for(int i=2;i<=x/2;i++){if(x%i==0&&sign[i])return false;}return true;
}
int main()
{sign[1] = true; sign[6] = true;for(int i=1;i<=300000;i++)if(sign[i])sign[i+7] = true;int n;while(~scanf("%d",&n) && n!=1){if(check(n))cout<<n<<": "<<n<<endl;else{v.clear();for(int i=2;i<=n/2;i++)if(n%i==0)v.push_back(i);cout<<n<<":";for(int i=0;i<v.size();i++){if(check(v[i]))cout<<" "<<v[i];}cout<<endl;}}return 0;
}

蓝桥杯试题 算法提高 Monday-Saturday质因子相关推荐

  1. 蓝桥杯试题 算法提高 扶老奶奶过街(C语言)

    试题 算法提高 扶老奶奶过街(C语言) 资源限制 时间限制:1.0s 内存限制:256.0MB 一共有5个红领巾,编号分别为A.B.C.D.E,老奶奶被他们其中一个扶过了马路. 五个红领巾各自说话: ...

  2. 蓝桥杯 试题 算法提高 P0402 猴子吃桃问题 Java

    试题 算法提高 P0402 资源限制 时间限制:1.0s   内存限制:256.0MB 猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个.第二天早上又将剩下的桃子吃掉一半,又多吃了一个. ...

  3. 蓝桥杯试题 算法提高 转圈游戏 C/C++

    试题 算法提高 转圈游戏 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 n 个小伙伴(编号从 0 到 n-1)围坐一圈玩游戏.按照顺时针方向给 n 个位置编号,从0 到 n-1.最 ...

  4. 蓝桥杯 试题 算法提高 阴谋(C++)

    阴谋 题目浏览 算法代码 核心思路 题目浏览 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 第四次圣杯战争开始了. 为了收集敌人的情报,言峰绮礼命令他的使魔Assassin将自己的 ...

  5. 蓝桥杯试题 算法提高 数组求和

    题干 我人比较蠢想不出好的解决方案,只能采用暴力破解才能维持的了生活这样.. 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 输入n个数,围成一圈,求连续m(m<n)个数的和最 ...

  6. 蓝桥杯试题 算法提高 Cutting Chains

    资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 什么!Anna Locke最近买了几个链环,并且其中的一些链环连接到了一起.它们是由zorkium做成的,这是一种在上世纪经常用来加工 ...

  7. 最小字符串(蓝桥杯试题 算法提高)

    题目链接:最小字符串 http://lx.lanqiao.cn/problem.page?gpid=T3001#submitpanel 问题描述 给定一些字符串(只包含小写字母),要求将他们串起来构成 ...

  8. 蓝桥杯试题 算法提高 书院主持人

    书院主持人 问题描述 北大附中书院有m个同学,他们每次都很民主地决策很多事情.按罗伯特议事规则,需要一个主持人.同学们民主意识强,积极性高,都想做主持人,当然主持人只有一人.为了选出主持人,他们想到了 ...

  9. 蓝桥杯试题 算法提高 编程求解根号3简单算法

    public class Main {public static void main(String[] args) {double a=Math.sqrt(3);System.out.printf(& ...

最新文章

  1. OpenStack使用neutron agent-list缺少组件
  2. mysql 事物 锁行 测试_MySQL Transaction--RC事务隔离级别下加锁测试
  3. Vue-Router API参考
  4. flask处理cookie
  5. Android拍照流程
  6. webshpere缓存--JSP
  7. java 验证码校验_JavaWeb验证码校验功能代码实例
  8. ado execute open区别_二极管IN4148和IN4007的应用区别
  9. java代码鸟飞_180行原生js代码实现简易版飞行的小鸟游戏
  10. 监听器实栗 在线人数统计
  11. 线程池工作原理流程图 源码概览线程池工作原理流程图 源码概览
  12. python参数解析模块sys、getopt、argparse学习使用与对比分析
  13. 计算机专业所需的职业道德,浅议计算机职业道德
  14. oracle用exp定时备份数据库,oracle exp备份数据库
  15. 使用 K3S 创建本地开发集群
  16. 解决invalid operands of types ‘float‘ and ‘int‘ to binary ‘operator %
  17. 支配树dominator tree学习笔记
  18. 计算机制作幻灯片视频教程,如何在电脑上制作幻灯片?
  19. 简介响应状态码1xx、2xx、5xx
  20. Java8种Stream流相关操作——集合的筛选、归约、分组、聚合

热门文章

  1. hive求某天是当年第几周形如yyyyww
  2. 新版QQ功能录制屏幕、截取任意形状、屏幕文字识别
  3. 四 状语从句(2021-11-09)
  4. 清爽的空气中流动着一种微熏的温情
  5. 校园版网络教学平台搭建方案(学生端)
  6. 堆排序稳定性举例_稳定排序和不稳定排序
  7. 2020第十七届华为杯数模C题——P300脑电信号数据预处理算法
  8. C调用shellcode方法总结
  9. 西工大计算机操作系统实验报告,西工大计算机操作系统课程设计实验报告bh05xh5...
  10. 从2021年度业绩报告看奇安信的网安“野望”