称号:放置在一个圆中的矩形,它要求每个圆的每行或列是切线,问:多少能竖起来。

分析:计算几何。数论。首先计算矩形显示屏,然后计算互显示器(每一行与相邻行相同差1个月)求最大,你可以。

说明:╮(╯▽╰)╭作为全球最大的显示器WA美好时光。

#include <iostream>
#include <cstdlib>
#include <cstdio>
#include <cmath> using namespace std; //题目方式摆放
int getmin(double x, double y)
{
int a = (int)x,m = 0;
int b = (int)(2.0*(y-1.0)/sqrt(3.0))+1;
if (m < a*b-b/2)
m = a*b-b/2;
a = (int)x;
if (a+0.5 <= x && m < a*b)
m = a*b;
return m;
} //最大数目摆放
int getmax(double x, double y)
{
int a = (int)x,m = 0;
//n+1,n,n+1方式
while (a > 1 && y >= 1) {
double d = (x-1.0)/(a-1.0);
if (d >= 2) break;
double r = sqrt(1.0-0.25*d*d);
if (r < 0.5) r = 0.5;
int b = (int)((y-1.0)/r)+1;
if (m < a*b-b/2)
m = a*b-b/2;
a --;
}
//n,n,n方式
a = (int)x;
while (a > 0 && y >= 1) {
double d = 2*(x-1.0)/(2*a-1.0);
if (d >= 2) break;
if (d >= 1) {
double r = sqrt(1.0-0.25*d*d);
if (r < 0.5) r = 0.5;
int b = (int)((y-1.0)/r)+1;
if (m < a*b)
m = a*b;
}
a --;
}
return m;
} int main()
{
double x,y;
while (cin >> x >> y) {
int n = (int)x*(int)y,m = 0,p,q; p = getmin(x, y);
if (p > m) m = p;
q = getmin(y, x);
if (q > m) m = q; if (m > n && x >= 1 && y >= 1)
cout << m << " skew" << endl;
else cout << n << " grid" << endl;
}
return 0;
}

版权声明:本文博客原创文章,博客,未经同意,不得转载。

UVa 121 - Pipe Fitters的更多相关文章

  1. UVA 303 Pipe

    点击打开链接 题意: 求光线能达到的最大横坐标 注意光线可以和管道重合 也可以经过转折点 解法: 枚举每种光线是否能通过每个转折点的截面(线段)即可 //大白p263 #include <cma ...

  2. HOJ题目分类

    各种杂题,水题,模拟,包括简单数论. 1001 A+B 1002 A+B+C 1009 Fat Cat 1010 The Angle 1011 Unix ls 1012 Decoding Task 1 ...

  3. echarts地图 绘制部分上海市公交线路数据

    源代码地址 https://github.com/a1115040996/MyHTML/blob/gh-pages/echarts/roadMap.html 预览地址 https://a1115040 ...

  4. Uva 12186 工人的请愿书

    题目链接:https://uva.onlinejudge.org/external/121/12186.pdf 题意: 给出一个树状关系图,公司里只有一个老板编号为0,其他人员从1开始编号.除了老板, ...

  5. UVA 10798 - Be wary of Roses (bfs+hash)

    10798 - Be wary of Roses You've always been proud of your prize rose garden. However, some jealous f ...

  6. UVa 12100 Printer Queue (习题 5-7)

    传送门:https://uva.onlinejudge.org/external/121/12100.pdf 题意:队列中待打印的任务(1 <= n <= 100)带有优先级(1-9), ...

  7. [uva] 10067 - Playing with Wheels

    10067 - Playing with Wheels 题目页:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Ite ...

  8. Fast Matrix Operations(UVA)11992

    UVA 11992 - Fast Matrix Operations 给定一个r*c(r<=20,r*c<=1e6)的矩阵,其元素都是0,现在对其子矩阵进行操作. 1 x1 y1 x2 y ...

  9. angular2系列教程(六)两种pipe:函数式编程与面向对象编程

    今天,我们要讲的是angualr2的pipe这个知识点. 例子

随机推荐

  1. AttributeError: 'module' object has no attribute 'Thread'

    $ python thread.py starting at: 2015-08-05 00:24:24Traceback (most recent call last):  File "th ...

  2. Boost.Asio基础(五) 异步编程初探

    异步编程 本节深入讨论异步编程将遇到的若干问题.建议多次阅读,以便吃透这一节的内容,这一节是对整个boost.asio来说是非常重要的. 为什么须要异步 如前所述,通常同步编程要比异步编程更简单.同步 ...

  3. HTML+CSS基础总结

    1. 首先声明正确的文档类型doctype 通常有四种文档类型可供选择: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" ...

  4. Flash Builder常用快捷键

    红色为常用 Ctrl-Shift-O - Organize imports,去除无用的导入类 Ctrl+F11 - 运行(在浏览器浏览) F11 - 调试 Alt+/ - 内容辅助 Ctrl+Alt+ ...

  5. 改变status bar的状态

    两种改变status bar状态的方法 一 :(全局的) 直接在当前控制器中(一般是在navigationcontroller) //- (UIStatusBarStyle)preferredStat ...

  6. BZOJ 1295: [SCOI2009]最长距离( 最短路 )

    把障碍点看做点(边)权为1, 其他为0. 对于每个点跑spfa, 然后和它距离在T以内的就可以更新答案 ------------------------------------------------ ...

  7. HTML解决div里面img的缝隙问题

    图片IMG与容器下边界之间有空隙怎么办?这里介绍3中简单的解决方法. 第一,给图片img标签display:block. img{display:block} 第二,定义容器里的字体大小为0. div ...

  8. php随笔5-thinkphp OA系统 人力资源管理

    最近闲来无事,自己尝试通过thinkphp3.1.3框架开发一套自己的OA系统,目前已完成了人力资源管理部分的内容,遇到并解决了几个问题. 1.由于刚开始不太熟悉thinkphp的框架,花费了一些功夫 ...

  9. 转: sublime text 2 前端编码神器-快捷键与使用技巧介绍

    代码编辑器或者文本编辑器,对于程序员来说,就像剑与战士一样,谁都想拥有一把可以随心驾驭且锋利无比的宝剑,而每一位程序员,同样会去追求最适合自己的强大.灵活的编辑器,相信你和我一样,都不会例外. 如果说 ...

  10. filezilla Can't open data connection.

    (000003)2016/7/4 9:31:42 - (not logged in) (10.61.41.57)> Connected, sending welcome message... ( ...