猜猜谁是我
来源:互联网 发布:淘宝天天团购网 编辑:程序博客网 时间:2024/05/01 01:16
作为一个脸盲,再加上多年不见,Martin已经完全不知道女神长成了什么样子,他表示完全认不出来。
好在Martin手上还有一张YSJ小时候的照片,他可以拿照片和视频里的人进行特征比对,从而找出女神。
为了简化问题,我们将YSJ小时候的脸表示成一个800行800列的矩阵,然后给出眼睛、鼻子、嘴巴的中心在脸上的坐标,全部用整数表示。视频中的其他人也都按照这个方式表示,截取正脸并且缩放到800x800以减小误差,输入不保证符合实际(例如不保证眼睛在鼻子的上方,鼻子在嘴巴上方blahblah。。)
Martin进行特征比对的方式相当简单粗暴:眼睛、鼻子、嘴巴中心和YSJ小时候照片的欧氏距离总和最小的就是女神。
YSJ小时候的脸部特征描述如下, 分别表示左眼、右眼、鼻子、嘴巴的中心在图中的位置(参见输入描述):
200 200
200 600
450 400
700 400
但是Martin的编程水平已经和他的表达能力一样烂到一定境界了,所以他希望聪明的你能够帮帮他。
3201 201200 600450 400700 400201 200200 600450 400700 400200 201200 600450 400700 400
2Hint欧氏距离就是两个点的直线距离
#include<stdio.h>
#include<math.h>
int main()
{
int i,j,n;
int u,v;
int m;
double x,y,z;
double min;
int cmp[4][2]={{200,200},{200,600},{450,400},{700,400}};
double sum[1000]={0};
while(scanf("%d",&n)!=EOF)
{
memset(sum,0,sizeof(sum));
for(i=0;i<n;i++)
{
for(j=0;j<4;j++)
{
scanf("%d%d",&u,&v);
x=u-cmp[j][0];
y=v-cmp[j][1];
z=sqrt(x*x+y*y);
sum[i]+=z;
}
}
min=0x3f3f3f3f;
u=0;
for(i=0;i<n;i++)
{
if(sum[i]<min)
{
min=sum[i];
u=i;
}
}
m=u+1;
printf("%d\n",m);
}
return 0;
}
- 猜猜谁是我
- 猜猜谁是我
- 猜猜谁是我
- 猜猜谁是我
- HDU 猜猜谁是我 两点间距离公式
- 网络同步赛——猜猜谁是我
- 浙江工业大学校赛 猜猜谁是我
- 让我猜猜结局
- 56 猜猜我是谁
- 猜猜......
- 文件基础应用-52.猜猜我是谁
- 猜猜我在想什么(RadioButtonID)
- 读《猜猜我有多爱你》画册
- 谁是我的客户?
- 谁是我的伯乐
- 谁是我的接班人?
- 谁是我邻居--kdTree&OcTree
- 讓我看看你的唇,猜猜你在說什麼
- iptables——实战NAT(端口转发)
- JS实现常见算法
- 电脑维修小笔记
- stm32f407以太网及USB OTG快速开发
- Struts2中<s-if>和<s-iterator>标签的使用
- 猜猜谁是我
- OpenCV 几何变换-图像旋转
- C++ setfill,setw,left,right
- POJ 2299 Ultra-QuickSort (逆序数, 归并排序)
- 用网线直连树莓派和电脑(解决ssh卡顿)
- DM-verity
- 最大连续子段和dp
- 【DayDayUp】个人经验_Python_正则表达式_之一
- 【LeetCode】No.257 Binary Tree Paths