亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

POJ ACM習題【No.1046】

系統 1825 0
Color Me Less
Time Limit: 1000MS Memory Limit: 10000K
Total Submissions: 15365 Accepted: 7186

Description

A color reduction is a mapping from a set of discrete colors to a smaller one. The solution to this problem requires that you perform just such a mapping in a standard twenty-four bit RGB color space. The input consists of a target set of sixteen RGB color values, and a collection of arbitrary RGB colors to be mapped to their closest color in the target set. For our purposes, an RGB color is defined as an ordered triple (R,G,B) where each value of the triple is an integer from 0 to 255. The distance between two colors is defined as the Euclidean distance between two three-dimensional points. That is, given two colors (R1,G1,B1) and (R2,G2,B2), their distance D is given by the equation

Input

The input is a list of RGB colors, one color per line, specified as three integers from 0 to 255 delimited by a single space. The first sixteen colors form the target set of colors to which the remaining colors will be mapped. The input is terminated by a line containing three -1 values.

Output

For each color to be mapped, output the color and its nearest color from the target set.

If there are more than one color with the same smallest distance, please output the color given first in the color set.

Sample Input

    0 0 0
255 255 255
0 0 1
1 1 1
128 0 0
0 128 0
128 128 0
0 0 128
126 168 9
35 86 34
133 41 193
128 0 128
0 128 128
128 128 128
255 0 0
0 1 0
0 0 0
255 255 255
253 254 255
77 79 134
81 218 0
-1 -1 -1

  

Sample Output

    (0,0,0) maps to (0,0,0)
(255,255,255) maps to (255,255,255)
(253,254,255) maps to (255,255,255)
(77,79,134) maps to (128,128,128)
(81,218,0) maps to (126,168,9)
  

?

此題沒有什么難點,注意比對最小歐式距離時的邏輯。

?

?

    import java.util.*;

public class Main {

	public static void main(String[] args) {
		Scanner cin = new Scanner(System.in);
		String[] str;
		
		int[][] target = new int[16][3];
		int[] temp = new int[3];
		int minIndex = 0;
		double minValue = -1;
		double tempValue = 0;
		
		for(int i = 0; i < 16; i++)
		{
			str = cin.nextLine().split(" ");
			target[i][0] = Integer.valueOf(str[0]).intValue();
			target[i][1] = Integer.valueOf(str[1]).intValue();
			target[i][2] = Integer.valueOf(str[2]).intValue();
		}
		
		while(cin.hasNext())
		{
			minIndex = 0;
			minValue = -1;
			tempValue = 0;
			str = cin.nextLine().split(" ");
			temp[0] = Integer.valueOf(str[0]).intValue();
			temp[1] = Integer.valueOf(str[1]).intValue();
			temp[2] = Integer.valueOf(str[2]).intValue();
			
			if(temp[0]==-1 && temp[1]==-1 && temp[2]==-1)
				break;
			
			for(int i = 0; i < 16; i++)
			{
				tempValue = getEuclideanD(temp, target[i]);
				if(tempValue == 0)
				{
					minValue = tempValue;
					minIndex = i;
					break;
				}
				if(minValue == -1)
				{
					minValue = tempValue;
					minIndex = 0;
					continue;
				}
				if(minValue > tempValue)
				{
					minValue = tempValue;
					minIndex = i;
				}
			}
			
			System.out.println(
					"("+temp[0]+","+temp[1]+","+temp[2]+
					") maps to "+
					"("+target[minIndex][0]+","+
					target[minIndex][1]+","+
					target[minIndex][2]+")");
		}
	}
	
	private static double getEuclideanD(int[] p1, int[] p2)
	{
		double value = 0;
		
		value = Math.sqrt(Math.pow((p2[0]-p1[0]), 2) +
					Math.pow((p2[1]-p1[1]), 2) + 
					Math.pow((p2[2]-p1[2]), 2));
		
		return value;
		
	}

}

  
?

POJ ACM習題【No.1046】


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 毛片短视频| 成人毛片18女人毛片免费96 | 久久福利小视频 | 久久9热 | 天天弄天天干 | 久久免费视频在线观看 | 国产精品欧美一区二区三区不卡 | 久久久精品久久久久久久久久久 | 欧美一区二区三区视频 | 午夜毛毛片 | 午夜视频免费国产在线 | 久久国产欧美另类久久久 | 尹人香蕉网在线观看视频 | 性欧美成人依依影院 | 久热这里只有精 | 精品福利在线视频 | 国产毛片在线高清视频 | 精品亚洲一区二区在线播放 | 91精品福利视频 | 国产五月色婷婷六月丁香视频 | 曰韩三级 | 亚洲视频在线播放 | 色婷婷天天综合在线 | 中文字幕无线码中文字幕免费 | 99视频这里有精品 | 欧美性一区二区三区 | 国产成人区 | 四虎永久免费地址ww417 | 久草在线在线视频 | 久久久青青久久国产精品 | 特级片毛片 | 国产情侣普通话刺激对白 | 国产欧美一区二区精品性色99 | 日本一区二区三区免费高清在线 | 国产成人精品区在线观看 | 国产美女拍拍拍在线观看 | 久久日精品 | 国产综合欧美日韩视频一区 | 亚洲视频精品在线 | 特级aa一级欧美毛片 | 国内精品欧美久久精品 |