准确的说是可以。
专注于为中小企业提供成都网站制作、成都网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业唐县免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了1000+企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
JAVA可以读入一个图片到内存保存为字节数组,再从数组中找到对应的位置下标,以数组内容判断RGB颜色。不过一般人是不会这么做的。
要看你是在什么项目以什么目的需求来取颜色。大部分方案都是以特殊技巧来实现你所提出的问题。
打个比方,如果图片是我自己上传的,只是显示给别人看的,那么我会把图片不同部位自定义编码,不同编码对应不同颜色。然后在显示时对图片设置热区就行了
输入 :无向连通图G和m种颜色的集合用这些颜色绘给图的顶点着色,每个顶点一种颜色,要求 G的每条边的两个顶点着不同的颜色
输出 :所有可能的着色方案,如果不存在告知'no’。
1.着色问题是一个以颜色为分支,点树为深度的m叉树
2.如果遍历到了叶节点,说明产生一组可行解
3.解至少存在0个或m个,因为点上的颜色可以整体变换。
每一个结点要判断是否颜色满足条件,就要去遍历原图,时间复杂度为O(n)
m叉树n个深度,就有nm^n的结点,因此时间复杂度为
O(n)=结点数 * 每个结点的时间复杂度=O(nm^n).
建议百度搜索地图着色问题,这是一个数学问题,印象中应该是个图的问题,所以你要先会用数学方式解决,其次才是用程序代码描述出来。
program Exam38; //程序名
const n=7; //定义一个常量 n 值为7
var a,b,c,t: integer; //声明四个整形变量
Begin //程序入口,开始
t:=0; //给t赋值,使t为0
for a:=1 to n do //以下语句执行n次,即7次
for b:=1 to n do //以下语句执行n次,即7次,因为上面要求循环7次,所以实际是49次
for c:=1 to n do //以下语句执行n次,即7次,因为上面要求循环49次,所以下面的语句一共执行了343次
if (a-b) * (b-c) * (a-c) 0 then //如果(a-b) * (b-c) * (a-c)满足不等于零这个条件,就执行一对begin 和 end 之间的代码
Begin //上述条件满足,执行
inc (t);// t增加1
writeln (a:3, b:3, c:3) //使a为3,b为3,c为3??这句不太明白
End; //条件部分结束
writeln ( total:, t :5); //
readln //输入一个字符
End.//程序结束