首页 > 学院 > 开发设计 > 正文

poj1046

2019-11-11 02:45:10
字体:
来源:转载
供稿:网友

题目大意:

给16种颜色。然后给出n种颜色,找到16种颜色中和它距离最近的颜色

解题思路:

挨个比较就好了

代码如下:

#include<stdio.h>#include<string.h>#include<math.h>#include<stdlib.h>int main(){ int point[26][4]; int x,y,z; int x1,y1,z1; int i; double d; for(i=1;i<=16;i++) { scanf("%d%d%d",&point[i][1],&point[i][2],&point[i][3]); } while(scanf("%d%d%d",&x,&y,&z)&&(x!=-1||y!=-1||z!=-1)) { x1=point[1][1];y1=point[1][2];z1=point[1][3]; d=sqrt((point[1][1]-x)*1.0*(point[1][1]-x)+(point[1][2]-y)*(point[1][2]-y)+(point[1][3]-z)*(point[1][3]-z)); for(i=2;i<=16;i++) { if(sqrt((point[i][1]-x)*1.0*(point[i][1]-x)+(point[i][2]-y)*(point[i][2]-y)+(point[i][3]-z)*(point[i][3]-z))<d) { d=sqrt((point[i][1]-x)*1.0*(point[i][1]-x)+(point[i][2]-y)*(point[i][2]-y)+(point[i][3]-z)*(point[i][3]-z)); x1=point[i][1];y1=point[i][2];z1=point[i][3]; } } PRintf("(%d,%d,%d) maps to (%d,%d,%d)/n",x,y,z,x1,y1,z1); } return 0;}
上一篇:GIT学习笔记一git init

下一篇:502. IPO

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表