Pixel density

Time Limit: 1000MS Memory limit: 65536K

题目描述

Pixels per inch (PPI) or pixel density is a measurement of the resolution of devices in various contexts; typically computer displays, image scanners, and digital camera image sensors. Note, the unit is not square inches. Good quality photographs
usually require 300 pixels per inch when printed. When the PPI is more than 300(phone), we call it retina screen. Sunnypiggy like the retina screen very much.

But you know it is expensive for Sunnypiggy and Sunnypiggy’s own smart phone isn’t like that.

I tell you how to calculate the PPI. First we must know how big the mobile phone’s screen is. Then we get the resolution (Hp*Wp) about it. After that we calculate the diagonal resolution in pixels (Dp) and divided by diagonal size in inches. Now you get the
answer.

Maybe you knew it, but Sunnypiggy’s math is very bad and he wants you to help him to calculate the pixel density of all the electronic products he dreamed.

输入

First you will get an integer T which means the number of test cases, and then Sunnypiggy will tell you the name and type of the electronic products. And you know, Sunnypiggy is a careless boy and some data aren’t standard, just like 04.00 inches
or 0800*0480.

输出

Output the answers to Sunnypiggy just like the sample output. Maybe it is not a phone. Sunnypiggy like such a form, although it seems no use. The result should be rounded to 2 decimal places. When it has no screen (0.0 inches) that we define
the answer is 0.00(PPI).

示例输入

2iPhone 4S  3.5 inches 960*640 PHONE
The new iPad  0009.7 inches 2048*1536 PAD

示例输出

Case 1: The phone of iPhone 4S's PPI is 329.65.
Case 2: The pad of The new iPad's PPI is 263.92.

提示

来源

2012年"浪潮杯"山东省第三届ACM大学生程序设计竞赛

#include <iostream>
#include <stdio.h>
#include <string.h>
#include <string>
#include <math.h>
#include <stdlib.h>
#include <algorithm>
typedef long long LL;
using namespace std;
int main()
{
int T;
cin>>T;
string mess;
char siz[1000];
char x[1000];
char y[1000];
char name[1000];
char type[1000];
int sizp,xp,yp;
int pos;
int pos_t;
double inch;
int px,py;
int cas=0;
getchar();
while(T--)
{
cas++;
getline(cin,mess);
pos=mess.find("inches");
pos_t=pos-1;
while(mess[pos_t]==' ') pos_t--;
sizp=0;
while(mess[pos_t]!=' ')
{
siz[sizp]=mess[pos_t];
pos_t--;
sizp++;
}
char tmp[1000];
for(int i=0; i<=sizp; i++)
tmp[sizp-i-1]=siz[i];
tmp[sizp]='\0';
sscanf(tmp,"%lf",&inch);
while(mess[pos_t]==' ') pos_t--;
for(int i=0; i<=pos_t; i++)
{
name[i]=mess[i];
}
name[pos_t+1]='\0';
pos_t=pos+6;
while(mess[pos_t]==' ') pos_t++;
xp=0;
while(mess[pos_t]!='*')
{
x[xp]=mess[pos_t];
xp++;
pos_t++;
}
x[xp]='\0';
sscanf(x,"%d",&px);
pos_t++;
yp=0;
while(mess[pos_t]!=' ')
{
y[yp]=mess[pos_t];
yp++;
pos_t++;
}
y[yp]='\0';
sscanf(y,"%d",&py);
while(mess[pos_t]==' ') pos_t++;
for(int i=pos_t; i<mess.size(); i++)
{
if(mess[i]>='A'&&mess[i]<='Z')
type[i-pos_t]=mess[i]+32;
else type[i-pos_t]=mess[i];
}
type[mess.size()-pos_t]='\0';
double ans;
if(inch!=0)ans=sqrt(px*px+py*py)/inch;
else ans=0.00;
printf("Case %d: The %s of %s's PPI is %.2f.\n",cas,type,name,ans);
}
return 0;
}

SDUT 2411:Pixel density的更多相关文章

  1. sdut 2411:Pixel density(第三届山东省省赛原题,字符串处理)

    Pixel density Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^ 题目描述 Pixels per inch (PPI) or pi ...

  2. Android UI 设计:pixel dip dpi sp density

    1. px (pixels)像素 – 是像素,就是屏幕上实际的像素点单位. dip或dp (device independent pixels)设备独立像素,与设备屏幕有关. sp (scaled p ...

  3. 论文阅读笔记十九:PIXEL DECONVOLUTIONAL NETWORKS(CVPR2017)

    论文源址:https://arxiv.org/abs/1705.06820 tensorflow(github): https://github.com/HongyangGao/PixelDCN 基于 ...

  4. 字符串处理sdut 2411

    题目:http://www.sdutacm.org/sdutoj/problem.php?action=showproblem&problemid=2411 关于字符串处理的题,此题坑点很多w ...

  5. SDUT 2409:The Best Seat in ACM Contest

    The Best Seat in ACM Contest Time Limit: 1000MS Memory limit: 65536K 题目描述 Cainiao is a university st ...

  6. SDUT 2608:Alice and Bob

    Alice and Bob Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^ 题目描述 Alice and Bob like playing ...

  7. SDUT 2623:The number of steps

    The number of steps Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^ 题目描述 Mary stands in a stra ...

  8. 浅谈响应式Web设计与实现思路

    是否还在为你的应用程序适配PC端,移动端,平板而苦苦思索呢,是否在寻找如何一套代码适配多终端方式呢,是否希望快速上手实现你的跨终端应用程序呢,是的话,那就看过来吧,本文阐述响应式UI设计相关理论基础, ...

  9. 一点响应式Web设计与实现思路

    摘要: 是否还在为你的应用程序适配PC端,移动端,平板而苦苦思索呢,是否在寻找如何一套代码适配多终端方式呢,是否希望快速上手实现你的跨终端应用程序呢,是的话,那就看过来吧,本文阐述响应式UI设计相关理 ...

随机推荐

  1. nexenta systemcallerror

    最近在试nexenta做iscsi,设置ip出现上面的错误 解决办法,先讲mtu设置为不周与原来的值,比如原来为1500,先设置成1501,就可以了,然后可以再改回来,也是没有问题的!

  2. Java基础之集合框架——使用堆栈Stack<>对象模拟发牌(TryDeal)

    控制台程序. public enum Rank { TWO, THREE, FOUR, FIVE, SIX, SEVEN, EIGHT, NINE, TEN, JACK, QUEEN, KING, A ...

  3. Java基础之读文件——使用通道随机读写文件(RandomReadWrite)

    控制台程序,使用通道随机读写primes_backup.bin文件. import static java.nio.file.StandardOpenOption.*; import java.nio ...

  4. Struts2配置文件各种标签的含义

    最近正在学习Struts2,在配置文件中遇到好多标签,各种意义不同.为了方便学习,便把各种标签的书写和含义总结如下:(随时更新)   <struts>     <!-- 开启使用开发 ...

  5. 转:Beautiful Soup

    Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式.Beautiful Soup会帮你节省数小时 ...

  6. 从一个例子讲解拷贝构造函数与return

    #include "iostream" using namespace std; class Location { public: Location(, ) { X = xx; Y ...

  7. bzoj 4358 permu

    比较容易想到莫队算法+线段树,但是这样时间复杂度是O(nsqrtnlogn)无法通过,考虑如果不进行删除操作,只有添加操作的话那么并查集就可以实现了,于是可以设定sqrtn块,每个块范围为(i-1)* ...

  8. spring da-y02-go1

    使用构造器实例化bean: springday02:(同样导入5个基本jar包)1.复制xml文件到ioc包下2.B类,实现无参构造器3.A类,B是它的成员变量,实现无参和set/get方法4.修改x ...

  9. java数组获取最值

    import java.util.Random; /** * 获取最大值最小值 * @author shaobn * */ public class Test2 { public static voi ...

  10. angular ng-href

    farmApp.config([ '$compileProvider', function( $compileProvider ) { $compileProvider.aHrefSanitizati ...