資源簡介
以1號蜂窩為點,其他蜂窩按照逆時針排列,求任意兩個蜂窩間最短路徑

代碼片段和文件信息
package?main;
public?class?CalRoutes?{
public?CalRoutes()
{
}
int?start=1;
int?end=1;
int?laps=0;
int?leap=6;
int?xjump=1;
int?yjump=2;
int?zjump=3;
int?xbase=1;
int?ybase=1;
int?zbase=1;
public?int?CaltheDistance(int?posaint?posb)
{
Coordinates?coorposa=new?Coordinates();
Coordinates?coorposb=new?Coordinates();
GetTheCoordinates(posa?coorposa);
GetTheCoordinates(posb?coorposb);
int?x=coorposa.getX()-coorposb.getX();
int?y=coorposa.getY()-coorposb.getY();
int?z=coorposa.getZ()-coorposb.getZ();
int?distanc=GetRouts(x?y?z);
return?distanc;
}
void?Init()
{
start=1;
end=1;
laps=0;
leap=6;
xjump=1;
yjump=2;
zjump=3;
xbase=1;
ybase=1;
zbase=1;
}
void?GetTheCoordinates(int?posCoordinates?coor)
{
Init();
if(pos==1)
{
return;
}
int?semi=0;
int?cycle=0;
while(true)
{
if(pos>=start&&pos<=end)
{
break;
}
start=end+1;
laps++;
end=start+laps*6-1;
xbase+=xjump;
ybase+=yjump;
zbase+=zjump;
xjump+=leap;
zjump+=leap;
yjump+=leap;
cycle=leap*laps;
}
int?coorx=CalCoor(pos?cycle?xbase);
coor.setX(coorx);
int?coory=CalCoor(pos?cycle?ybase);
coor.setY(coory);
int?coorz=CalCoor(pos?cycle?zbase);
coor.setZ(coorz);
}
int?CalCoor(int?posint?cycleint?base)
{
int?temp=pos-base;
int?semi=cycle/2;
if(temp<0)
{
temp=cycle-temp;
}
int?cor=temp%semi;
if(cor>laps)
{
cor=semi-cor;
if(cor>laps)
{
cor=laps;
}
}
if(temp {
cor=0-cor;
}
return?cor;
}
int?GetRouts(int?xint?yint?z)
{
x=Math.abs(x);
y=Math.abs(y);
z=Math.abs(z);
int?dis=x>y?x:y;
dis=dis>z?dis:z;
return?dis;
}
class?Coordinates
{
private?int?x;
private?int?y;
private?int?z;
Coordinates()
{
x=0;
y=0;
z=0;
}
public?int?getX()?{
return?x;
}
public?void?setX(int?x)?{
this.x?=?x;
}
public?int?getY()?{
return?y;
}
public?void?setY(int?y)?{
this.y?=?y;
}
public?int?getZ()?{
return?z;
}
public?void?setZ(int?z)?{
this.z?=?z;
}
}
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2014-06-05?15:41??src\
?????目錄???????????0??2014-08-02?23:05??src\main\
?????文件????????2239??2014-08-02?23:38??src\main\CalRoutes.java
?????文件?????????370??2014-08-02?23:39??src\main\main.java
- 上一篇:electronic letters模板
- 下一篇:s3c44b0x的公版電路原理圖
評論
共有 條評論