题目链接:Captain Flint and Crew Recruitment

题意:

t组输入,每一组输入一个n。这里我们说一下题目定义的近似质数概念:

“如果可以将正整数x表示为p⋅q,则将其定义为近似质数,其中1 <p <q,p和q是质数。 例如,整数6和10几乎是质数(因为2⋅3= 6和2⋅5= 10),但整数1、3、4、16、17不是。”

这里我们把n分成四个数的和,你需要使这四个数中的至少三个数都是近似质数,且要保证这四个数互不相等

如果能找出来这四个数就输出,否则输出NO

题解:

因为只需要三个数都是近似质数就行,那么最小的三个近似质数是6,10,14那么n的大小最小要等于31才可以有解

这里要注意,题目要求四个数要互不相等,那么我们就需要特判一下36,40,44

代码:

 1 #include<stack>
2 #include<queue>
3 #include<map>
4 #include<cstdio>
5 #include<cstring>
6 #include<iostream>
7 #include<algorithm>
8 #define fi first
9 #define se second
10 using namespace std;
11 typedef long long ll;
12 const int maxn=1e5+10;
13 const int mod=1e9+7;
14 const double eps=1e-8;
15 int a[maxn],b[maxn];
16 int main()
17 {
18 int t;
19 scanf("%d",&t);
20 while(t--)
21 {
22 int n;
23 scanf("%d",&n);
24 if(n==36)
25 {
26 printf("YES\n");
27 printf("5 6 10 15\n");
28 }
29 else if(n==40)
30 {
31 printf("YES\n");
32 printf("15 6 10 9\n");
33 }
34 else if(n==44)
35 {
36 printf("YES\n");
37 printf("6 7 10 21\n");
38 }
39 else if(n>6+10+14)
40 {
41 printf("YES\n");
42 printf("6 10 14 ");
43 printf("%d\n",n-30);
44 }
45 else
46 {
47 printf("NO\n");
48 }
49 }
50 return 0;
51 }

题目链接:Captain Flint and a Long Voyage

题意:

t组输入,每组数据给你一个n,代表数x的长度,这个x是你需要找到的一个整数。你把x的每一位数转化成二进制形式后就是k

例如 x=729, 那么 k=111101001 (因为 7=111, 2=10, 9=1001).

然后你把k的末尾n个二进制数删除,就是最后的结果,例如上面的例子删除之后就变成了111101

你要使这个结果尽可能的大,所以给你一个n,让你求能使最后结果尽可能大的最小的那个x是多少,然后输出x

题解:

你会发现整数8、9转化成二进制都是4位,所以我们的x肯定是由8、9构成的,那么什么时候用8什么时候用9呢?

比较来看8、9的二进制形式也就只有最后一位不同

题目又说输出那个最小的x,题目的x转化成k之后,还要删除末尾的n个二进制数。删除这n个二进制数由8这个整数构成才可以使得x最小

所以x的最后n/4+(n%4!=0)位输出8,剩下的输出9

代码:

 1 #include<stack>
2 #include<queue>
3 #include<map>
4 #include<cstdio>
5 #include<cstring>
6 #include<iostream>
7 #include<algorithm>
8 #define fi first
9 #define se second
10 using namespace std;
11 typedef long long ll;
12 const int maxn=1e5+10;
13 const int mod=1e9+7;
14 const double eps=1e-8;
15 int a[maxn],b[maxn];
16 int main()
17 {
18 int t;
19 scanf("%d",&t);
20 while(t--)
21 {
22 int n;
23 scanf("%d",&n);
24 int ans=n/4;
25 if(n%4)
26 ans++;
27 for(int i=1;i<=n-ans;++i)
28 printf("9");
29 for(int i=1;i<ans;++i)
30 printf("8");
31 printf("8\n");
32 }
33 return 0;
34 }

Codeforces Round #660 (Div. 2) A. Captain Flint and Crew Recruitment、Captain Flint and a Long Voyage的更多相关文章

  1. Codeforces Round #660 (Div. 2) A、B、C题解

    A. Captain Flint and Crew Recruitment #构造 题目链接 题意 定义一类正整数,能够被\(p*q\)表示,其中\(p.q(1<p<q)\)均为素数,称之 ...

  2. Codeforces Round #660 (Div. 2)

    A. Captain Flint and Crew Recruitment 题意:定义了一种数(接近质数),这种数可以写成p*q并且p和q都是素数,问n是否可以写成四个不同的数的和,并且保证至少三个数 ...

  3. Codeforces Round #660 (Div. 2) Captain Flint and Treasure 拓扑排序(按照出度、入读两边拓扑排序)

    题目链接:Captain Flint and Treasure 题意: 一种操作为 选一个下标 使得ans+=a[i] 且 把a[b[i]]+a[i]   要求每个下标都进行一种这样的操作,问怎么样的 ...

  4. Codeforces Round #660 (Div. 2) Uncle Bogdan and Country Happiness dfs

    题目链接:Uncle Bogdan and Country Happiness 题意: t组输入,每组数据输入如下 首先一个n代表有n个城市,所有城市总人数为m,后面输入pi表示第i个城市的居住人数, ...

  5. Codeforces Round #660 (Div. 2) C. Uncle Bogdan and Country Happiness (DFS)

    题意:有\(n\)个人,每个人居住在某个节点,所有人都在节点\(1\)上班,下班后沿着最短路径回家,在回家途中心情可能会变差(心情只会变差不会变好),每个节点都有一个开心值,开心值等于所有经过时的好心 ...

  6. Codeforces Round #271 (Div. 2)题解【ABCDEF】

    Codeforces Round #271 (Div. 2) A - Keyboard 题意 给你一个字符串,问你这个字符串在键盘的位置往左边挪一位,或者往右边挪一位字符,这个字符串是什么样子 题解 ...

  7. Codeforces Round #366 (Div. 2) ABC

    Codeforces Round #366 (Div. 2) A I hate that I love that I hate it水题 #I hate that I love that I hate ...

  8. Codeforces Round #354 (Div. 2) ABCD

    Codeforces Round #354 (Div. 2) Problems     # Name     A Nicholas and Permutation standard input/out ...

  9. Codeforces Round #368 (Div. 2)

    直达–>Codeforces Round #368 (Div. 2) A Brain’s Photos 给你一个NxM的矩阵,一个字母代表一种颜色,如果有”C”,”M”,”Y”三种中任意一种就输 ...

随机推荐

  1. golang遍历时修改被遍历对象

    目录 前言 遍历切片 遍历map 总结 前言 很多时候需要将遍历对象中去掉某些元素,或者往遍历对象中添加元素,这时候就需要小心操作了. 对于go语言中的一些注意事项我做了总结和示例,留下点笔记. 遍历 ...

  2. Zabbix 4.0.24 完整安装

    依赖包安装: yum install net-snmp* libssh-devel libssh2-devel -y Zabbix server安装: wget https://cdn.zabbix. ...

  3. upload-labs 1-21关通关记录

    0x01: 检查源代码,发现JS前端验证,关闭JS即可连接,或者手动添加.php,或者上传1.jpg,再抓包修改为php 0X02: if (($_FILES['upload_file']['type ...

  4. 【Oracle】10.2.0.1升级到10.2.0.5

    升级数据库到10.2.0.5   因是测试环境,不需要备份:如是生产系统,建议进行全备份后再进行升级操作,预防数据丢失造成不必要的影响.   步骤: 上传并解压补丁,安装前准备,安装补丁,预升级检查, ...

  5. kubernets之headless

    一  认识headless服务 1服务以及服务的作用相信大家都已经耳熟能详了吗,服务接受请求,并且随机的将请求转发到相关联的任一pod来处理请求,但是考虑另外一种场景, 如果有客户端需要知道这个服务关 ...

  6. Spring Boot 2.x基础教程:配置元数据的应用

    在使用Spring Boot开发应用的时候,你是否有发现这样的情况:自定义属性是有高量背景的,鼠标放上去,有一个Cannot resolve configuration property的配置警告. ...

  7. Android根据pdf模板生成pdf文件

    我们需要生成一些固定格式的pdf文件或者一些报表数据,那么我们可以用 iText包去做. 需要包含的jar包:iText-5.0.6.jar    iTextAsian.jar ,怎样jar包导入工程 ...

  8. MATLAB图像处理_Bayer图像处理 & RGB Bayer Color分析

    Bayer图像处理   Bayer是相机内部的原始图片, 一般后缀名为.raw. 很多软件都可以查看, 比如PS. 我们相机拍照下来存储在存储卡上的.jpeg或其它格式的图片, 都是从.raw格式转化 ...

  9. k8s之PV、PVC、StorageClass详解

    导读 上一篇写了共享存储的概述以及一个简单的案例演示.这一篇就写一下PV和PVC. PV是对底层网络共享存储的抽象,将共享存储定义为一种"资源",比如Node也是容器应用可以消费的 ...

  10. 每月一更的《HelloGitHub》第 58 期,来啦!

    HelloGitHub 分享 GitHub 上有趣.入门级的开源项目.欢迎大家: 贡献代码 宣传你觉得优秀的项目 Star 项目️ 本月刊是每月 28 号更新,再见月刊就是年后了.在这里提前祝大家:新 ...