一本通1032、2032、2048
1032:大象喝水
这道题的原题不知道为何,叫大象喝水查。
【题目描述】
一只大象口渴了,要喝20升水才能解渴,但现在只有一个深h厘米,底面半径为r厘米的小圆桶(h和r都是整数)。问大象至少要喝多少桶水才会解渴。
【输入】
输入有一行:包行两个整数,以一个空格分开,分别表示小圆桶的深h和底面半径r,单位都是厘米。
【输出】
输出一行,包含一个整数,表示大象至少要喝水的桶数。
【输入样例】
23 11【输出样例】
3
分析
1、要想做出这道题,我们就需要求出这个桶的体积。这个桶是一个圆柱体,体积为:;
2、和的单位为,而题干中是升。
3、在用毫升(升)除以桶的体积时需向上取整。
AC代码
#include<iostream>
#include<math.h>//数学库
using namespace std;
int main(){int h,r;cin>>h>>r;float v=r*r*3.14*h;cout<<ceil(20000/v)<<endl;//计算出桶数并向上取整输出return 0;
}
拓展——math.h数学库
<cmath> (math.h)
math.h(即cmath)声明了一些常用的数学函数。比如:
- pow()幂函数。提供两个参数,分别为底数与指数,返回值为浮点型。
- sqrt()开方(仅限平方)。提供一个数,返回,类型为浮点型。
- abs()与fabs()绝对值函数。注意:这里指cmath中的绝对值函数!两者几乎没有区别,提供一个浮点数,返回它的绝对值,也是浮点数。
- ceil():向上取整。
- floor():向下取整。
- round():四舍五入。
2032:【例4.18】分解质因数
【题目描述】
把一个合数分解成若干个质因数乘积的形式(即求质因数的过程)叫做分解质因数。分解质因数(也称分解素因数)只针对合数。
输入一个正整数n,将n分解成质因数乘积的形式。
【输入】
一个正整数n。
【输出】
分解成质因数乘积的形式。质因数必须由小到大,见样例。
【输入样例】
36【输出样例】
36=2*2*3*3【提示】
【数据范围】
对于所有数据,。
分析
有人拿到这道题觉得可能会分出合数,要做一个质数的数组,但其实不用!因为任何合数都是由质数组成的,你只需要像短除法一样去除就是了。比如60(我字有点丑):
AC代码
#include<iostream>
using namespace std;
int main(){int n,m; cin>>n;m=n;bool b=1;cout<<n<<"=";for(int i=2;m!=1;i++){while(m%i==0){//除到除不尽if(!b)cout<<"*";//在第一个数前面没有乘号else b=0;cout<<i;m/=i;}}cout<<endl;return 0;
}
2048:【例5.18】串排序
【题目描述】
对给定的n(1≤n≤20)n(1≤n≤20)个国家名(国家名字长度不超过20),按其字母的顺序输出。
【输入】
第一行为国家的个数n;
以下n行为国家的名字。
【输出】
nn行,排序后的国名。
【输入样例】
3 Korea China Japan【输出样例】
China Japan Korea
分析
这道题呢有的人觉得要排序,还要写个特别长的排序规则,实际上并没有那么麻烦,其实可以直接用algorithm(算法头文件)的sort()排序函数就是了。
AC代码
#include<iostream>
#include<string>
#include<algorithm>//算法头文件
using namespace std;
int main(){int n; cin>>n;string s[20];for(int i=0;i<n;i++)cin>>s[i];sort(s,s+n);//排序for(int i=0;i<n;i++)cout<<s[i]<<endl;return 0;
}
思考
如果不用字符串,用字符数组应该怎么做呢?
好了,练了几道题,今天就到这里了。拜拜!
一本通1032、2032、2048相关推荐
- 信息学奥赛一本通(2032:【例4.18】分解质因数)
2032:[例4.18]分解质因数 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 582 通过数: 376 [题目描述] 把一个合数分解成若干个质因数乘积 ...
- 信息学奥赛一本通C++语言-----2048:【例5.18】串排序
[题目描述] 对给定的n(1≤n≤20)n(1≤n≤20)个国家名(国家名字长度不超过2020),按其字母的顺序输出. [输入] 第一行为国家的个数nn: 以下nn行为国家的名字. [输出] nn行, ...
- 信息学奥赛一本通 1032:大象喝水 | OpenJudge NOI 1.3 14
[题目链接] ybt 1032:大象喝水 OpenJudge NOI 1.3 14:大象喝水 [题目考点] 1. 数学知识 柱体体积 = 底面积*高 圆面积 = π∗r2\pi *r^2π∗r2 长度 ...
- 如何在Java中转义HTML
在Java中,我们可以使用Apache commons-text , StringEscapeUtils.escapeHtml4(str)来转义HTML字符. pom.xml <dependen ...
- Linux 用户磁盘空间配额管理
Linux 用户磁盘空间配额管理 2011-12-21 17:16 文件系统配额示例:检查quota功能包是否已经安装:rpm –q quota 1. 先要启动文件系统的限额功能.这一步主要是要编辑/ ...
- 基于python将grd文件转成tif,并进行裁剪
'''本程序用于将grd文件转换成tif文件并进行裁剪.校准''' import pandas as pd import numpy as np from osgeo import gdal, gda ...
- 信息学奥赛一本通 2048:【例5.18】串排序
[题目链接] ybt 2048:[例5.18]串排序 [题目考点] 1. 多字符串处理 方法1:string类对象数组 设string类对象数组s,s[i]保存第i个字符串.s[i]是string类对 ...
- 信息学奥赛一本通 2032:【例4.18】分解质因数
[题目链接] ybt 2032:[例4.18]分解质因数 [题目考点] 1. 质数 [解题思路] 解法1:使用循环 每次循环中,遍历2到n,找到一个n的质因数,输出,而后n除以该因数,继续循环. 解法 ...
- 信息学奥赛一本通(2048:【例5.18】串排序)
2048:[例5.18]串排序 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 515 通过数: 239 [题目描述] 对给定的n(1≤n≤20)n(1≤n ...
最新文章
- 命令查看java的class字节码文件、verbose、synchronize、javac、javap
- Android Screen Monitor抓取模拟器与真机界面
- 列表元素循环移位中Python切片的妙用
- 《坦克世界》1.0+:使用 CPU 优化的图形和物理丰富用户体验
- Ztree 仿淘宝树结构完美实现 移动 右键增删改
- Android IntentService的使用和源代码分析
- 阿里矢量图标库的使用
- MySQL中使用update更新替换某个字符串
- 计算机三级数据库考试题型,计算机三级数据库技术考试习题及答案
- Hibernate拦截器字段加密解密
- 网络流——基础,Dinic和Sap(Gap优化)算法
- 古琴怎么学——【唐畅古琴】
- laravel发送邮件
- armbian 斐讯n1_树莓派/斐讯N1/ARMBIAN/安装HOME ASSISTANT
- SDLC 软件开发生命周期及模型
- 使用h5的方式来实现钟表
- 结对项目——可循环的最大子数组
- 前端--鼠标跟随特效
- 微信小程序更新数组数据,页面不刷新问题
- 毕业设计 单片机智能录音器设计与实现 - 物联网 嵌入式
热门文章