洛谷训练新手村之“BOSS战-入门综合练习1”题解
P1478 陶陶摘苹果(升级版)
题目链接:https://www.luogu.com.cn/problem/P1478
题目大意:陶陶有s点体力值,每个苹果消耗体力值,问s体力值最多能摘多少苹果。
解题思路:首先过滤掉摘不到的苹果。其次从小到大排序, 贪心 思想:优先选择消耗体力值小的苹果。
实现代码如下:
#include <bits/stdc++.h>
using namespace std;
const int maxn = 5050;
int n, m, s, a, b, x[maxn], y[maxn], ans;
int main() {
cin >> n >> s >> a >> b;
a += b;
while (n --) {
cin >> x[m] >> y[m];
if (x[m] <= a) m ++;
}
sort(y, y+m);
for (int i = 0; i < m; i ++) {
if (y[i] <= s) {
s -= y[i];
ans ++;
}
else break;
}
cout << ans << endl;
return 0;
}
P1618 三连击(升级版)
题目链接:https://www.luogu.com.cn/problem/P1618
题目大意:求出所有壁纸为A:B:C的三位数。
解题思路:遍历第一个数,判断后两个数是否都是三位数且刚好这三个数从1到9。
实现代码如下:
#include <bits/stdc++.h>
using namespace std;
int A, B, C;
bool t[10];
bool check(int a) {
if (a % A) return false;
int b = a/A*B, c = a/A*C;
if (b >= 1000 || c >= 1000) return false;
int d = a * 1000000 + b * 1000 + c;
memset(t, 0, sizeof(t));
while (d) {
t[d%10] = true;
d /= 10;
}
for (int i = 1; i < 10; i ++) if (!t[i]) return false;
return true;
}
int main() {
cin >> A >> B >> C;
bool flag = false;
for (int a = 123; a < 333; a ++) {
if (check(a)) {
flag = true;
cout << a << " " << a/A*B << " " << a/A*C << endl;
}
}
if (!flag) puts("No!!!");
return 0;
}
P1579 哥德巴赫猜想(升级版)
题目链接:https://www.luogu.com.cn/problem/P1579
题目大意:给你一个数,找三个素数使得它们的和是这个数。
解题思路:数据量偏大,所以采用素数筛法,然后再枚举。
实现代码如下:
#include <bits/stdc++.h>
using namespace std;
const int maxn = 20020;
bool pp[maxn];
int n, a, p[maxn];
void init() {
pp[0] = pp[1] = true;
for (int i = 2; i < maxn; i ++)
if (!pp[i]) {
p[n++] = i;
for (int j = i; j < maxn/i; j ++) pp[i*j] = true;
}
}
int main() {
init();
cin >> a;
for (int i = 0; i < n; i ++)
for (int j = i; j < n; j ++) {
if (p[i] + p[j] >= a) continue;
if (!pp[a- p[i] - p[j] ]) {
cout << p[i] << " " << p[j] << " " << a-p[i]-p[j] << endl;
return 0;
}
}
return 0;
}
P2089 烤鸡
题目链接:
题目大意:
猪猪Hanke特别喜欢吃烤鸡(本是同畜牲,相煎何太急!)Hanke吃鸡很特别,为什么特别呢?因为他有10种配料(芥末、孜然等),每种配料可以放1—3克,任意烤鸡的美味程度为所有配料质量之和
现在,Hanke想要知道,如果给你一个美味程度,请输出这10种配料的所有搭配方案
解题思路:枚举出所有的状态方案。因为直接枚举得开好多循环,所以我可以采用类似 状态压缩 的思想,每个状态对应一个三进制数,然后三进制数的每一位对应10个数字,这样比较好解决一些。
实现代码如下:
#include <bits/stdc++.h>
using namespace std;
int a[10], n, res;
int main() {
cin >> n;
if (n < 10 || n > 30) {
puts("0");
return 0;
}
n -= 10;
for (int i = 0; i < 59049; i ++) {
int tmp = i, cnt = 0;
for (int j = 9; j >= 0; j --) {
a[j] = tmp % 3;
tmp /= 3;
cnt += a[j];
}
if (cnt == n) res ++;
}
cout << res << endl;
for (int i = 0; i < 59049; i ++) {
int tmp = i, cnt = 0;
for (int j = 9; j >= 0; j --) {
a[j] = tmp % 3;
tmp /= 3;
cnt += a[j];
}
if (cnt != n) continue;
for (int j = 0; j < 10; j ++) {
if (j) putchar(' ');
cout << a[j]+1;
}
cout << endl;
}
return 0;
}
洛谷训练新手村之“BOSS战-入门综合练习1”题解的更多相关文章
- 洛谷训练新手村之“BOSS战-入门综合练习2”题解
P1426 小鱼会有危险吗 题目链接:https://www.luogu.com.cn/problem/P1426 题目大意: 有一次,小鱼要从A处沿直线往右边游,小鱼第一秒可以游7米,从第二秒开始每 ...
- 洛谷-小鱼会有危险吗-BOSS战-入门综合练习2
题目描述 Description 有一次,小鱼要从A处沿直线往右边游,小鱼第一秒可以游7米,从第二秒开始每秒游的距离只有前一秒的98%.有个极其邪恶的猎人在距离A处右边s米的地方,安装了一个隐蔽的探测 ...
- 洛谷-烤鸡-BOSS战-入门综合练习1
题目背景 Background 猪猪hanke得到了一只鸡 题目描述 Description 猪猪Hanke特别喜欢吃烤鸡(本是同畜牲,相煎何太急!)Hanke吃鸡很特别,为什么特别呢?因为他有10 ...
- 洛谷-陶陶摘苹果(升级版)-BOSS战-入门综合练习1
题目描述 Description 又是一年秋季时,陶陶家的苹果树结了n个果子.陶陶又跑去摘苹果,这次她有一个a公分的椅子.当他手够不着时,他会站到椅子上再试试. 这次与NOIp2005普及组第一题不同 ...
- 洛谷-哥德巴赫猜想(升级版)-BOSS战-入门综合练习1
题目背景 Background 1742年6月7日哥德巴赫写信给当时的大数学家欧拉,正式提出了以下的猜想:任何一个大于9的奇数都可以表示成3个质数之和.质数是指除了1和本身之外没有其他约数的数,如2和 ...
- 洛谷-三连击(升级版)-BOSS战-入门综合练习1
题目描述 Description 将1,2,…,9共9个数分成三组,分别组成三个三位数,且使这三个三位数构成A:B:C的比例,试求出所有满足条件的三个三位数,若无解,输出“No!!!”. 输入输出格 ...
- 【Luogu】【关卡1-8】BOSS战-入门综合练习2(2017年10月)【AK】------都是基础题
P1426 小鱼会有危险吗 我个人觉得这个题目出的不好,没说明白,就先只粘贴的AC代码吧 #include <bits/stdc++.h> using namespace std; int ...
- 【洛谷P2584】【ZJOI2006】GameZ游戏排名系统题解
[洛谷P2584][ZJOI2006]GameZ游戏排名系统题解 题目链接 题意: GameZ为他们最新推出的游戏开通了一个网站.世界各地的玩家都可以将自己的游戏得分上传到网站上.这样就可以看到自己在 ...
- 洛谷4525 & 4526:【模板】自适应辛普森法——题解
参考:https://phqghume.github.io/2018/05/19/%E8%87%AA%E9%80%82%E5%BA%94%E8%BE%9B%E6%99%AE%E6%A3%AE%E6%B ...
随机推荐
- Part10-字符型设备驱动模型-part10.1-使用字符型设备
‘ ’
- 现代IM系统中的消息系统架构 - 模型篇
前言 在架构篇中我们介绍了现代IM消息系统的架构,介绍了Timeline的抽象模型以及基于Timeline模型构建的一个支持『消息漫游』.『多端同步』和『消息检索』多种高级功能的消息系统的典型架构.架 ...
- vue init定制团队模板之meta.js/meta.json写法入门
在上一篇文章中,我们提到了meta.js,这次我们详细了解一下meta.js里面各个模块的写法. 对于 meta.js/metajson 文件, 目前主要字段如下: prompts<Object ...
- Android教程 -07 Activity的任务栈和启动模式
Activity是由任务栈管理的,一般情况下一个应用程序只有一个任务栈. 什么是栈? 栈是一种常用的数据结构,栈只允许访问栈顶的元素,栈就像一个杯子,每次都只能取杯子顶上的东西 栈的特点就是先进后出, ...
- 神经网络入门——6and感知机
AND 感知器练习 AND 感知器的权重和偏置项是什么? 把权重(weight1, weight2)和偏置项 bias 设置成正确的值,使得 AND 可以实现上图中的运算. 在这个例子 ...
- g++ 编译单个文件和多个文件
转载:https://www.cnblogs.com/battlescars/p/cpp_linux_gcc.html 1.单个源文件生成可执行程序 下面是一个保存在文件 helloworld.cpp ...
- Jieba分词包(一)——解析主函数cut
1. 解析主函数cut Jieba分词包的主函数在jieba文件夹下的__init__.py中,在这个py文件中有个cut的函数,这个就是控制着整个jieba分词包的主函数. cut函数的定义如 ...
- 最短路径Dijkstra算法和Floyd算法整理、
转载自:http://www.cnblogs.com/biyeymyhjob/archive/2012/07/31/2615833.html 最短路径—Dijkstra算法和Floyd算法 Dijks ...
- 梯度下降优化算法综述与PyTorch实现源码剖析
现代的机器学习系统均利用大量的数据,利用梯度下降算法或者相关的变体进行训练.传统上,最早出现的优化算法是SGD,之后又陆续出现了AdaGrad.RMSprop.ADAM等变体,那么这些算法之间又有哪些 ...
- 条件随机场(CRF) - 1 - 简介
声明: 1,本篇为个人对<2012.李航.统计学习方法.pdf>的学习总结,不得用作商用,欢迎转载,但请注明出处(即:本帖地址). 2,由于本人在学习初始时有很多数学知识都已忘记,所以为了 ...