首页 > 代码库 > [算法]POJ1046
[算法]POJ1046
Color Me Less:
http://poj.org/problem?id=1046
类似于最近邻算法,距离采用传统的欧式距离。
用到的算法:寻找最小元素
以下是c语言实现
/************************************************************************* > File Name: 1046.c > Author: > Mail: > Created Time: 2015年01月20日 星期二 21时30分53秒 ************************************************************************/#include<stdio.h>int find_min(int map[16][3],int r,int g,int b){ int dis[16],min_index=0,min=255*255*255,i; for(i=0;i<16;i++) { dis[i]=(r-map[i][0])*(r-map[i][0])+(g-map[i][1])*(g-map[i][1])+(b-map[i][2])*(b-map[i][2]); } for(i=0;i<16;i++) { if(dis[i]<min) { min_index=i; min=dis[i]; } } return min_index; }int main(){ int map[16][3]; int index,i,r,g,b; for(i=0;i<16;i++) { scanf("%d %d %d",&map[i][0],&map[i][1],&map[i][2]); } scanf("%d %d %d",&r,&g,&b); while(r>=0) { index=find_min(map,r,g,b); printf("(%d,%d,%d) maps to (%d,%d,%d)\n",r,g,b,map[index][0],map[index][1],map[index][2]); scanf("%d %d %d",&r,&g,&b); } return 0;}
[算法]POJ1046
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。