Codeforces 916 二进制1数目构造(阅读理解) 最小生成树1-N路径质数构造
A
- #include <bits/stdc++.h>
- #define PI acos(-1.0)
- #define mem(a,b) memset((a),b,sizeof(a))
- #define TS printf("!!!\n")
- #define pb push_back
- #define inf 1e9
- //std::ios::sync_with_stdio(false);
- using namespace std;
- //priority_queue<int,vector<int>,greater<int>> que; get min
- const double eps = 1.0e-10;
- const double EPS = 1.0e-4;
- typedef pair<int, int> pairint;
- typedef long long ll;
- typedef unsigned long long ull;
- const int turn[][] = {{, }, { -, }, {, }, {, -}};
- //priority_queue<int, vector<int>, less<int>> que;
- //next_permutation
- ll mod = 3e7;
- const int MAXN=;
- bool check(int x,int y)
- {
- if(x%==)
- return true;
- if(y%==)
- return true;
- return false;
- }
- int main()
- {
- int n;
- int h,m;
- cin >> n >> h >> m;
- int cur=;
- for(cur=;!check(h,m);cur++)
- {
- m-=n;
- if(m<)
- m+=,h--;
- if(h<)
- h+=;
- }
- cout<<cur<<endl;
- }
B
给你一个N 要求你分解成二进制的K个数并且要求你求出字典序尽量小情况下最大的答案
当原来1的数量>=k时 答案很明显
当1的数量<k时 因为要最小字典序 所以前面的要尽量小 要把最前面的1尽量全部变成后面的
当最前面的1的数量大于剩下的k时就不能继续转化了转化了字典序就不是尽量小情况下的最大答案了
应该转化最后的一个1直到满足答案 这样字典序才是最大的
- #include <bits/stdc++.h>
- #define PI acos(-1.0)
- #define mem(a,b) memset((a),b,sizeof(a))
- #define TS printf("!!!\n")
- #define pb push_back
- #define inf 1e9
- //std::ios::sync_with_stdio(false);
- using namespace std;
- //priority_queue<int,vector<int>,greater<int>> que; get min
- const double eps = 1.0e-10;
- const double EPS = 1.0e-4;
- typedef pair<int, int> pairint;
- typedef long long ll;
- typedef unsigned long long ull;
- const int turn[][] = {{, }, { -, }, {, }, {, -}};
- //priority_queue<int, vector<int>, less<int>> que;
- //next_permutation
- priority_queue<int, vector<int>, less<int>> que;
- ll mod = 3e7;
- const int MAXN = ;
- int er[],*aim = er+;
- int main()
- {
- ll n;
- int k;
- cin >> n >> k;
- for(int i=;i<=;i++)
- {
- k-=aim[i]=(n>>i)&;
- }
- if(k<)
- {
- cout<<"No"<<endl;
- return ;
- }
- if(k==)
- {
- cout<<"Yes"<<endl;
- for(int i=;i>=-;i--)
- {
- if(aim[i])
- cout<<i<<" ";
- }
- cout<<endl;
- return ;
- }
- for(int i=;i>=-;i--)
- {
- if(k>=aim[i])
- {
- aim[i-]+=*aim[i];
- k-=aim[i];
- aim[i]=;
- }
- else
- {
- int cur=-;
- while(!aim[cur])
- cur++;
- for(int j=;j<=k;j++)
- {
- aim[cur-]+=;
- aim[cur--]--;
- }
- break;
- }
- }
- cout<<"Yes"<<endl;
- for(int i=;i>=-;i--)
- while(aim[i])
- cout<<i<<" ",aim[i]--;
- }
C
给你N个点和M条边 要去你输出M条边 使得1到N的最短路长度是质数 最短生成树的值是质数
可以找个很大的质数 使得除了N-1与N的值为质数-(N-1)而其他i与i+1相连的值是1 剩下要构造的其他边直接取很大的值就可以了
- #include <bits/stdc++.h>
- #define PI acos(-1.0)
- #define mem(a,b) memset((a),b,sizeof(a))
- #define TS printf("!!!\n")
- #define pb push_back
- #define inf 1e9
- //std::ios::sync_with_stdio(false);
- using namespace std;
- //priority_queue<int,vector<int>,greater<int>> que; get min
- const double eps = 1.0e-10;
- const double EPS = 1.0e-4;
- typedef pair<int, int> pairint;
- typedef long long ll;
- typedef unsigned long long ull;
- const int turn[][] = {{, }, { -, }, {, }, {, -}};
- //priority_queue<int, vector<int>, less<int>> que;
- //next_permutation
- priority_queue<int, vector<int>, less<int>> que;
- ll mod = 3e7;
- const int MAXN = ;
- int pop = ;
- int prime;
- bool ok(int x)
- {
- for (int i = ; i <= (int)sqrt(x); i++)
- {
- if (x % i == )
- {
- return false;
- }
- }
- return true;
- }
- int main()
- {
- int want = 1e9;
- int n, m;
- for (int i = ; i <= ; i++)
- {
- if (ok(i))
- {
- prime = i;
- break;
- }
- }
- cin >> n >> m;
- cout << prime << " " << prime << endl;
- m -= n - ;
- for (int i = ; i <= n - ; i++)
- {
- cout << i << " " << i + << " " << << endl;
- }
- prime -= n - ;
- cout << n - << " " << n << " " << prime << endl;
- for (int i = ; i <= n - && m; i++)
- {
- for (int j = ; j <= n - i && m; j++, m--)
- {
- cout << j << " " << j + i << " " << want << endl;
- }
- }
- }
Codeforces 916 二进制1数目构造(阅读理解) 最小生成树1-N路径质数构造的更多相关文章
- Codeforces#543 div2 A. Technogoblet of Fire(阅读理解)
题目链接:http://codeforces.com/problemset/problem/1121/A 真·阅读理解 题意就是 有n个人 pi表示他们的强度 si表示他们来自哪个学校 现在Arkad ...
- 用Keras搞一个阅读理解机器人
catalogue . 训练集 . 数据预处理 . 神经网络模型设计(对话集 <-> 问题集) . 神经网络模型设计(问题集 <-> 回答集) . RNN神经网络 . 训练 . ...
- 阅读关于DuReader:百度大规模的中文机器阅读理解数据集
很久之前就得到了百度机器阅读理解关于数据集的这篇文章,今天才进行总结!.... 论文地址:https://arxiv.org/abs/1711.05073 自然语言处理是人工智能皇冠上的明珠,而机器阅 ...
- 机器阅读理解(看各类QA模型与花式Attention)
目录 简介 经典模型概述 Model 1: Attentive Reader and Impatient Reader Model 2: Attentive Sum Reader Model 3: S ...
- 手把手带你阅读Mybatis源码(一)构造篇
前言 今天会给大家分享我们常用的持久层框架——MyBatis的工作原理和源码解析,后续会围绕Mybatis框架做一些比较深入的讲解,之后这部分内容会归置到公众号菜单栏:连载中…-框架分析中,欢迎探讨! ...
- 机器阅读理解(看各类QA模型与花式Attention)(转载)
目录 简介 经典模型概述 Model 1: Attentive Reader and Impatient Reader Attentive Reader Impatient Reader Model ...
- HTTPS强制安全策略-HSTS协议阅读理解
https://developer.mozilla.org/en-US/docs/Web/Security/HTTP_strict_transport_security [阅读理解式翻译,非严格遵循原 ...
- Tensorflow做阅读理解与完形填空
catalogue . 前言 . 使用的数据集 . 数据预处理 . 训练 . 测试模型运行结果: 进行实际完形填空 0. 前言 开始写这篇文章的时候是晚上12点,突然想到几点新的理解,赶紧记下来.我们 ...
- P3879 [TJOI2010]阅读理解 题解
P3879 [TJOI2010]阅读理解 题解 题目描述 英语老师留了N篇阅读理解作业,但是每篇英文短文都有很多生词需要查字典,为了节约时间,现在要做个统计,算一算某些生词都在哪几篇短文中出现过. 输 ...
随机推荐
- java 强弱软虚 四种引用,以及用到的场景
1.利用软引用和弱引用解决OOM问题:用一个HashMap来保存图片的路径和相应图片对象关联的软引用之间的映射关系,在内存不足时,JVM会自动回收这些缓存图片对象所占用的空间,从而有效地避免了OOM的 ...
- Linux NTP服务器的搭建及client自动更新时间
Network Time Protocol(NTP)是用来使计算机时间同步化的一种协议,它可以使计算机对其服务器或时钟源(如石英钟,GPS等等)做同步化,它可以提供高精准度的时间校正(LAN上与标准间 ...
- JavaScript json loop item in array
Iterating through/Parsing JSON Object via JavaScript 解答1 Your JSON object is incorrect because it ha ...
- 中国MOOC_面向对象程序设计——Java语言_期末考试编程题_1细胞自动机
期末考试编程题 返回 这是期末考试的编程题 温馨提示: 1.本次考试属于Online Judge题目,提交后由系统即时判分. 2.学生可以在考试截止时间之前提交答案,系统将取其中的最高分作为最终成 ...
- 中国MOOC_零基础学Java语言_第2周 判断_1时间换算
第2周编程题 查看帮助 返回 第2周编程题 依照学术诚信条款,我保证此作业是本人独立完成的. 温馨提示: 1.本次作业属于Online Judge题目,提交后由系统即时判分. 2.学生可以在作业截 ...
- oracle-控制文件的备份和恢复
本篇将介绍各种备份及恢复控制文件的方法,在介绍恢复时,以备份和重做日志(包括归档日志和在线日志)没有丢失为前提. 无备份情况下的控制文件恢复参考13.3,丢失重做日志的情况请参考12篇“不完全数据库恢 ...
- RequestContextHolder获取request和response
RequestContextHolder获取request和response 2019年03月16日 15:18:15 whp404 阅读数:21更多 个人分类: Spring 首先需要在web. ...
- <class 'blog.admin.CategoryAdmin'>: (admin.E108) The value of 'list_display[0]' refers to 'mame', which is not a callable, an attribute of 'CategoryAdmin', or an attribute or method on 'blog.Category'
系统反馈此类错误是因为行列映射时无法对应: 引起无法对应的原因有: 定义是缺少某列,定义时缩进导致,映射关系时缺少某列,(通俗讲列名对应不上). 这种错误多是python中的 因为其中对于空格的要求是 ...
- 网络编程.TCP分块接收数据(AIO)(IOCP)
1.前提:每次投递的接收缓冲区 在它返回后 就不再用它进行2次投递了 于是 接收缓冲区 在返回的时候,数据都是 从接收缓冲区的偏移[0]处开始填充的,且 接收缓冲区 可能被填满 也可能未被填满. 1. ...
- kafka学习(二)
创建kafka生产者 要往kafka写入消息,首先要创建一个生产者对象,并设置一些熟悉.kafka生产者有3个必选的属性. 1.bootstrap.servers 该属性指定broker的地址清单 ...