C. 圆圈圈

有两个圆圈圈,如图所示,要把它们放在矩形里,必须让两个圈圈的底部和矩形的底部相切,求矩形的最短宽度D

Input

输入文件有多行,每行两个整数,格式如下

R1   R2

R1,R2是两个圈圈的半径,0<R1,R2<=100

R1=0,R2=0时输入结束

Output

对应于输入的每一组数据,用单独的一行输出D的最小值,保留到两位小数。

Sample Input

3 3
0 0

Sample Output

12.00

解题思路:

如上图所示,分两种情况。

代码如下:

/*两种情况,1:两圆相差不大,两圆与底部相切的同时又分别与两边相切
2:两圆圈中一个特别的大,其直径就是最短宽度D,另一个圆则在它与边
形成的空隙中*/
#include<stdio.h>
#include<math.h>
int main()
{
    int r1,r2,max;
    double D;
    while(scanf("%d%d",&r1,&r2))
    {
        if(r1==0&&r2==0)
            break;
        max=r1>r2?r1:r2;
        D=sqrt((r1+r2)*(r1+r2)-(r1-r2)*(r1-r2));
        if(r1+r2+D<2.0*max)
        {
            printf("%.2lf\n",2.0*max);
        }
        else
        {
            printf("%.2lf\n",r1+r2+D);
        }
    }
    return 0;
}

C. 圆圈圈

时间: 2024-10-16 07:43:23

C. 圆圈圈的相关文章

使用 ViewPager 和 RadioGroup 封装的一个导航控件

import android.animation.ObjectAnimator; import android.content.Context; import android.graphics.drawable.Drawable; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentActivity; import android.support.v4.app.FragmentManager;

超级强大的SVG SMIL animation动画详解

本文花费精力惊人,具有先驱前瞻性,转载规则以及申明见文末,当心予以追究.本文地址:http://www.zhangxinxu.com/wordpress/?p=4333 //zxx: 本文的SVG在有缓存时候是无动画效果,此时您可以试着[右键-新标签页打开图片]. 一.SVG SMIL animation概览 1. SMIL是什么?SMIL不是指「水蜜梨」,而是Synchronized Multimedia Integration Language(同步多媒体集成语言)的首字母缩写简称,是有标准

UGUI RectTransform详解

UGUI RectTransform.Unity RectTransform详解 The first:look look API. http://docs.unity3d.com/ScriptReference/RectTransform.html 在新的UI系统中,无论Button,Text,Image,Toggle等组件,都是基于RectTransform进行布局的. 你可以不知Button为何物,不知Text为何物,不知Image为何物,但是一定要知道RectTransform. 自Uni

佩特来项目经验小集合(6)___ASP.NET模板页的读取

在佩特来售后管理系统流程中,其中有一个节点是故障分析,也就是将发回来的整机进行故障分析,传统的方法是将每个整机的故障信息录入一个Excel表,表格Excel样式: 这里是将Excel转换成模板页,然后根据需要替换模板中的标签,将功能完整展示,下面介绍在这个功能在项目中实现步骤: 1.将Excel转换为网页 打开Excel文档,单击菜单栏中的"文件",找到"另存为",如图所示.在"另存为" 窗口的"保存类型",下拉菜单中找到&q

Html单选按钮自定义样式

前言: 某天,写了一个带有单选按钮的界面,突然想起网上其他网站各种各样的单选按钮,遂想"改下这个圆圈圈怎么样?",于是在找了一遍单选按钮的样式,没一个说是修改圆圈圈,于是又去网上找了一遍,各种各样,自己选了其中一种并稍加修改,感觉简单通俗易懂,而且最重要的是效果好,故在此和大家分享一下. 原理:    之前已经提及,html的单选按钮没有提供一个样式能修改其圆圈,所以仅靠一句类似"color:#fff"的语句是不可能的,不过考虑:    (A)html每个input

高仿QQ头像截取

花费了半天时间,把 仿QQ头像截取的方法整理了下,并制作了一个demo以供大家参考,基本上实现了qq中我的资料界面上(包括背景透明化,上滑标题栏显示,下拉隐藏等)的大致效果,先上图看效果吧: 支持的功能: 1.选择裁剪的图片支持手势放大缩小(包括双击放大缩小): 2.判断图片边缘,即裁剪区域不会超过图片边缘: 原理: 一个重写的RelativeLayout,里面放了两层View,下层是重写的支持缩放的ImageView用于放置选择裁剪的图片,ImageView上层是一个自定义View,通过onD

PHP独立环境搭建细节

一.安装前准备: ?准备安装软件此处以以下软件为例: Appache:httpd-2.2.21-win32-x86-openssl-0.9.8r.msi MySQL: mysql-5.5.21-win32.msi PHP: php-5.4.21-Win32-VC9-x86.zip 数据库处理软件可用phpmyadmin.sqlyog(笔者推荐) 注:php有两种版本:VC9就是the Visual Studio 2008 compile ,是用微软的vs编辑器编译的,VC6就是legacy vi

“青软杯”安徽科技学院第六届程序设计大赛_专业组

Contest - "青软杯"安徽科技学院第六届程序设计大赛_专业组 Start time:  2015-04-18 08:00:00.0  End time:  2015-04-18 12:00:00.0 Current System Time:  2015-04-21 00:07:42.57  Contest Status:   Ended 关于举办"青软杯"安徽科技学院 第六届程序设计大赛通知 ACM 国际大学生程序设计竞赛 (International Co

canvas 画一个小时钟

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body> <canvas id="mycanvas" height="1000" width="1000"></ca