FZU 1077 铁皮容器
来源:互联网 发布:linux服务器开发书籍 编辑:程序博客网 时间:2024/04/27 23:05
Problem 1077 铁皮容器
Accept: 1040 Submit: 2314Time Limit: 1000 mSec Memory Limit : 32768 KB
Problem Description
使用白铁皮制作圆柱容器(有盖),其中每个容器耗用的铁皮量(表面积)固定为1000平方厘米。在已知容器的容积情况下,编程计算容器底半径的最小可能取值。其中容器的容积为整数,半径精确到小数点后面一位。
Input
输入的第一行含一个正整数k (1<=k<=10),表示测试例的个数。后面紧接着k行,每行对应一个测试例,含一个整数n(0<=n<=20000),代表容积。
Output
每个测试例对应一行输出,含一个实数,表示半径的值,若无解则输出“NO”。
Sample Input
210003000
Sample Output
2.1NO
Source
FJNU Preliminary 2005列举一下圆柱的表面积公式和体积公式然后就会发现小东西了
V=PI*R*R*H
S=2*PI*R*R+2*PI*R*H
已知V和最大的S,所以表面积可以由2*V/R+2*PI*R*R
又因为题目告诉我们R取小数点后一位,那么我们从0.01往前找就是了
#include<cstdio>#include<cstring>#include<algorithm>#include<iostream>#include<string>#include<vector>#include<stack>#include<bitset>#include<cstdlib>#include<sstream>#include<cctype>#include<cmath>#include<set>#include<list>#include<deque>#include<map>#include<queue>using namespace std;typedef long long ll;const double PI=acos(-1.0);const double eps=1e-6;const int INF=0x3f3f3f3f;const int maxn=1234;int T;int n,m;int ans,flag;int main(){ int t; scanf("%d",&t); while(t--){ int v; scanf("%d",&v); double r=0.01; int flag=0; while(1){ if(v/r+PI*r*r<=500) break; if(PI*r*r>500) { flag=1; break; } r+=0.01; } if(!flag) printf("%.1f\n",r); else printf("NO\n"); } return 0;}
阅读全文
0 0
- FZU 1077 铁皮容器
- FOJ Problem 1077 铁皮容器
- 铁皮容器
- I-铁皮容器
- 论日系车薄铁皮与安全性
- FZU
- FZU
- FZU
- FZU
- FZU
- FZU
- FZU
- FZU
- FZU
- FZU
- FZU
- FZU
- FZU
- 入坑集锦(三)
- 类图四大关系与用例图三种关系
- 设计模式--适配器模式
- SSM框架原理,作用及使用方法
- k个瓶子可以换1瓶酒,要喝n瓶酒,最少需要买多少瓶酒?
- FZU 1077 铁皮容器
- 语料库之职业名持续更新:【内向即失败--王奕君】
- dutoj1007圆桌会议
- 【mysql】--MVCC 多版本控制
- python机器学习案例系列教程——优化,寻找使成本函数最小的最优解
- 基于大数据的房价分析--2.数据解析
- C# 装箱 拆箱
- 【sql】oracle运维sql之权限
- mongo安装相关