2018年蓝桥杯A组C/C++决赛题解
2018年第九届蓝桥杯A组C/C++决赛题解
点击查看视频题解
点击查看2018年蓝桥杯A组C/C++决赛题目(不含答案)
1:三角形面积
画个图,求三角形面积,可以用外接长方形 - 其他多余区域面积
当然网上很多用海伦公式啊什么的都可以的
#include<bits/stdc++.h>
using namespace std;
double x1 = 2.3;
double yy1 = 2.5;
double x2 = 6.4,y2 = 3.1;
double x3 = 5.1,y3 = 7.2;
int main(){
double a = x2 - x1;
double b = y3 - yy1;
double c = x3 - x1;
double d = x2 - x3;
double e = y2 - yy1;
double f = y3 - y2;
cout<<a*b<<endl;
double s = a * b - a * e * 0.5 - b * c * 0.5 - d * f * 0.5;
cout<<s<<endl;
return 0;
}
//8.795
2:阅兵方阵
枚举
题意是:将一个数分成两个平方数相加,求自然数中一共能分12组的最小值
预处理所以平方数,枚举就可以了,还要注意,这里要分解成12组不同的数,我们枚举时会计算两个平方数交换的次数,所以算成12*2组就可以了。
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const ll maxn = 1e7+10;
ll can[maxn];
void init(){
for(ll i=1;i<=1e6;i++){
if(i * i > maxn) break;
can[i*i] = 1;
}
}
int main(){
init();
//能组成12个
for(int k = 1105;k<=200000;k++){
int ans = 0;
for(int a=1;a<=k;a++){
if(!can[a]) continue;
if(!can[k - a]) continue;
ans++;
}
if(ans == 12*2){
cout<<k<<endl;
break;
}
}
return 0;
}
//5525 a 和 k-a 交换
//160225 不能交换
3:找假币
网上也都是这个答案,不保证正确性:balance(data[0] + data[1] + data[2] , data[3] + data[4] + data[5])
4:约瑟夫环
30% - 80%数据点可以用队列暴力做的
设置变量计数器t
如果t == k:队头出队, t赋值为1
否则t++,对头出队再进队尾
100%转换成约瑟夫数学问题了,见题解:https://blog.csdn.net/u011500062/article/details/72855826
30%暴力做法代码:
#include<bits/stdc++.h>
using namespace std;
/*
使用队列模拟
能过部分数据
设置变量计数器t
如果t == k:队头出队, t赋值为1
否则t++,对头出队再进队尾
*/
queue<int> q;
int n,k;
int main(){
cin>>n>>k;
for(int i=1;i<=n;i++){
q.push(i);
}
int t = 1;
while(q.size() > 1){
int front = q.front();
if(t == k){
q.pop();
t = 1;
}else{
q.pop();
q.push(front);
t++;
}
}
cout<<q.front()<<endl;
return 0;
}
5:自描述序列
30%数据点暴力
100%递推 见题解:https://blog.csdn.net/metaphysis/article/details/6532638
30%暴力做法代码:
#include<bits/stdc++.h>
using namespace std;
//模拟 30%数据
int n;
vector<int> v;
void init(){
v.push_back(1);
v.push_back(1);
v.push_back(2);
v.push_back(2);
}
int main(){
cin>>n;
init();
int ans = 4;
for(int i=3;i<=n;i++){
int t = v[i];
if(ans < n){
for(int j=1;j<=t;j++){
v.push_back(i);
}
ans += t;
}else{
break;
}
}
cout<<v[n]<<endl;
return 0;
}
6:采油
没写
2018年蓝桥杯A组C/C++决赛题解的更多相关文章
- 2018年蓝桥杯B组C/C++决赛题解
2018年第九届蓝桥杯B组C/C++决赛题解 点击查看2018年蓝桥杯B组C/C++决赛题目(不含答案) 1.换零钞 ok 枚举 设x表示1元钱的个数,y表示2元钱的个数,z表示5元钱的个数 x+21 ...
- 2018年蓝桥杯A组C/C++决赛题目
2018年蓝桥杯A组C/C++决赛题目 2018年蓝桥杯A组C/C++决赛题解 1:三角形面积 已知三角形三个顶点在直角坐标系下的坐标分别为: (2.3, 2.5) (6.4, 3.1) (5 ...
- 2018年蓝桥杯B组C/C++决赛题目
自己的博客排版,自我感觉略好一点. 先放上题目. 点击查看2018年蓝桥杯B组C/C++决赛题目题解 1.换零钞 x星球的钞票的面额只有:100元,5元,2元,1元,共4种. 小明去x星旅游, ...
- 2016年蓝桥杯B组C/C++决赛题解
2016年第七届蓝桥杯B组C/C++决赛题解 2016年蓝桥杯B组C/C++决赛题目(不含答案) 1.一步之遥 枚举解方程,或者套模板解线性方程 #include<bits/stdc++.h&g ...
- 2015年蓝桥杯B组C/C++决赛题解
2015年第六届蓝桥杯B组C/C++决赛题解 点击查看2015年第六届蓝桥杯B组C/C++国赛题目(不含答案) 1.积分之迷 三重循环 枚举A,B,C的值,如果满足两个条件:3个A + 7个B ...
- 2017年蓝桥杯B组C/C++决赛题解
2017年蓝桥杯B组C/C++决赛题目(不含答案) 1.36进制 ok 求36进制,类比二进制转10进制,36^3 + 36^2 + 36^1 + 36^0 2.磁砖样式 ok dfs搜索 我自己写的 ...
- 2016年蓝桥杯B组C/C++决赛题目
2016年第七届蓝桥杯B组C/C++决赛题目 点击查看2016年第七届蓝桥杯B组C/C++决赛题解 1.一步之遥 从昏迷中醒来,小明发现自己被关在X星球的废矿车里. 矿车停在平直的废弃的轨道上. 他的 ...
- 2017年蓝桥杯B组C/C++决赛题目
2017年第八届蓝桥杯B组C/C++决赛题目 点击查看2017年蓝桥杯B组C/C++决赛题解 1.36进制 对于16进制,我们使用字母A-F来表示10及以上的数字. 如法炮制,一直用到字母Z, ...
- 2015年蓝桥杯B组C/C++决赛题目
2015年第六届蓝桥杯B组C/C++国赛题目 点击查看2015年第六届蓝桥杯B组C/C++国赛题解 1.积分之迷 小明开了个网上商店,卖风铃.共有3个品牌:A,B,C. 为了促销,每件商品都会 ...
随机推荐
- Linux:LNMP环境的搭建
LNMP环境的搭建 安装DNS服务器 安装DNS服务 yum install bind -y DNS的配置 创建正向解析 以创建一个名为"lsy.com"的正向查找区域为例: 第一 ...
- Redis—简介与安装
Redis 简介 Redis 安装 Redis 配置文件 # Redis默认不是以守护进程的方式运行,可以通过该配置项修改,使用yes启用守护进程.daemonize yes # 当Redis以守护进 ...
- GetPrivateProfileInt 使用方法
GetPrivateProfileInt =>从ini文件取得数值 <参数> lpApplicationName String,指定在其中查找条目的小节.注意这个字串是不区分大小写的 ...
- testng.xml文件的配置
------Web自动化测试之Webdriver+TestNG--从零到熟练(系列) TestNG用来管理测试用例的是testng.xml配置文件,我们可以通过配置这个文件来达到组织测试用例,输出测试 ...
- 原型链 | 显示原型、隐式原型 | 构造关系constructor | instanceof
1.原型关系 prototype 显式原型:prototype 隐式原型:__proto__ 1. 每个函数function都有一个prototype,即显式原型(属性)2. 每个实例对象都有一个__ ...
- <Design> 359 346
359. Logger Rate Limiter 用map搭建. class Logger { HashMap<String, Integer> map; /** Initialize y ...
- Spring Batch与ETL工具比较
在实际应用中,在批处理中用得较多的是场景是数据同步.在做数据集成工作中,常常需要从源位置把数据同步到目标位置,以便于进行后续的逻辑操作.在做这种批处理工具时,在网上查资料,发现用得比较多的是kettl ...
- pyqt5多线程-简单例子
一.主要代码逻辑 from PyQt5 import QtWidgets, QtCore from testqt.TEST_QT_FROM import Ui_Dialog import sys fr ...
- 掌握Spring REST TypeScript生成器
在优锐课的java分享中,讨论了关于Spring REST TypeScript生成器,该生成器创建反映后端模型和REST服务的模型和服务.码了很多干货,分享给大家参考学习. 我注意到网络开发人员创建 ...
- IT兄弟连 Java语法教程 三目运算符
Java提供了一个特殊的三目(三个分支)运算符,它可以替代特定类型的if-then-else语句结构.这个运算符是“?”乍一看可能有一些困惑,但一旦理解“?”运算符,就可以高效地使用它.“?”运算符的 ...