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路径质数构造的更多相关文章

  1. Codeforces#543 div2 A. Technogoblet of Fire(阅读理解)

    题目链接:http://codeforces.com/problemset/problem/1121/A 真·阅读理解 题意就是 有n个人 pi表示他们的强度 si表示他们来自哪个学校 现在Arkad ...

  2. 用Keras搞一个阅读理解机器人

    catalogue . 训练集 . 数据预处理 . 神经网络模型设计(对话集 <-> 问题集) . 神经网络模型设计(问题集 <-> 回答集) . RNN神经网络 . 训练 . ...

  3. 阅读关于DuReader:百度大规模的中文机器阅读理解数据集

    很久之前就得到了百度机器阅读理解关于数据集的这篇文章,今天才进行总结!.... 论文地址:https://arxiv.org/abs/1711.05073 自然语言处理是人工智能皇冠上的明珠,而机器阅 ...

  4. 机器阅读理解(看各类QA模型与花式Attention)

    目录 简介 经典模型概述 Model 1: Attentive Reader and Impatient Reader Model 2: Attentive Sum Reader Model 3: S ...

  5. 手把手带你阅读Mybatis源码(一)构造篇

    前言 今天会给大家分享我们常用的持久层框架——MyBatis的工作原理和源码解析,后续会围绕Mybatis框架做一些比较深入的讲解,之后这部分内容会归置到公众号菜单栏:连载中…-框架分析中,欢迎探讨! ...

  6. 机器阅读理解(看各类QA模型与花式Attention)(转载)

    目录 简介 经典模型概述 Model 1: Attentive Reader and Impatient Reader Attentive Reader Impatient Reader Model ...

  7. HTTPS强制安全策略-HSTS协议阅读理解

    https://developer.mozilla.org/en-US/docs/Web/Security/HTTP_strict_transport_security [阅读理解式翻译,非严格遵循原 ...

  8. Tensorflow做阅读理解与完形填空

    catalogue . 前言 . 使用的数据集 . 数据预处理 . 训练 . 测试模型运行结果: 进行实际完形填空 0. 前言 开始写这篇文章的时候是晚上12点,突然想到几点新的理解,赶紧记下来.我们 ...

  9. P3879 [TJOI2010]阅读理解 题解

    P3879 [TJOI2010]阅读理解 题解 题目描述 英语老师留了N篇阅读理解作业,但是每篇英文短文都有很多生词需要查字典,为了节约时间,现在要做个统计,算一算某些生词都在哪几篇短文中出现过. 输 ...

随机推荐

  1. legend3---阿里云如何多个域名指向同一个网站

    legend3---阿里云如何多个域名指向同一个网站 一.总结 一句话总结: 先寻求资料及文档,没有找到的话自己摸索一下就好 结论:多个域名都需要备案 二.阿里云如何多个域名指向同一个网站 当前情况 ...

  2. Java8 新特性之集合操作Stream

    Java8 新特性之集合操作Stream Stream简介 Java 8引入了全新的Stream API.这里的Stream和I/O流不同,它更像具有Iterable的集合类,但行为和集合类又有所不同 ...

  3. ping: sendto: No route to host

    root@tuhooo:/home/ # ping www.baidu.comPING www.a.shifen.com (61.135.169.125): 56 data bytesping: se ...

  4. Unity ZTest 深度测试 & ZWrite 深度写入

    初学Shader,一开始对于渲染队列,ZTest 和 ZWrite一头雾水,经过多方查阅和实验,有了一些自己的理解.发此文与初学Shader的朋友分享,也算是为自己做个笔记.不对或不足之处欢迎指正. ...

  5. pycharm2018.2安装

    1.官网下载安装包 https://www.jetbrains.com/pycharm/download/#section=windows (下载2018.2版本,进行破解) 2.参考其他博主安装破解 ...

  6. (转载)深入解析String#intern

    本文转载自:深入解析String#intern 引言 在 JAVA 语言中有8中基本类型和一种比较特殊的类型String.这些类型为了使他们在运行过程中速度更快,更节省内存,都提供了一种常量池的概念. ...

  7. myBatis 基于javaBean配置

    MyBatis的持久化解决方案是将用户从原始的JDBC访问中解放出来,用户只需要定义需要操作的SQL语句, 无须关注底层的JDBC操作,就可以以面向对象的方式来进行持久化层操作.底层数据库连接的获取, ...

  8. urllib库认证,代理,cookie

    认证,代理,cookie 1from urllib.request import HTTPBasicAuthHandler, HTTPPasswordMgrWithDefaultRealm, buil ...

  9. P1540翻译机器

    这是2010提高组第一题,是一个使用队列的模拟题(然而洛谷很多大佬用了最短路) 这道题首先要判断内存中是否已有解释(因为题目已经说了长度很小,所以可以用桶排序),没有的话便去外存找,找到后,存到内存的 ...

  10. getopt_long函数解析命令行参数

    转载:http://blog.csdn.net/hcx25909/article/details/7388750 每一天你都在使用大量的命令行程序,是不是感觉那些命令行参数用起来比较方便,他们都是使用 ...