]]>re: Google緙栫▼鎸戞垬璧涘叆鍥磋禌250鍒嗛鍙婄瓟妗堚斺擝usStops棰?/title>http://www.tkk7.com/FinalFantasy/archive/2005/12/22/24975.html#25079dotNet鐨勭▼搴忓憳dotNet鐨勭▼搴忓憳Thu, 22 Dec 2005 06:53:00 GMThttp://www.tkk7.com/FinalFantasy/archive/2005/12/22/24975.html#25079public class BusStops
{
public static void Main()
{
BusStops total = new BusStops();
//System.out.println(total.countStops({"...B.",".....","..X.B",".....","B...."},3));
System.Console.WriteLine(total.countStops(new string[]{"...B.",".....","..X.B",".....","B...."},3));
System.Console.ReadLine();
}
public int countStops(string[] cityMap, int walkingDistance)
{
Position xPosition=null;
System.Collections.Stack stack=new System.Collections.Stack();
for(int i=0;i<cityMap.Length;i++)
{
for(int j=0;j<cityMap[i].Length;j++)
{
if(cityMap[i][j]=='X')
{
xPosition=new Position();
xPosition.x = i;
xPosition.y = j;
}
else if(cityMap[i][j]=='B')
{
Position busStop=new Position();
busStop.x=i;
busStop.y=j;
stack.Push(busStop);
}
}
}
if (xPosition==null) throw new Exception("鏈彂鐜癤鐐?quot;);
if (stack.Count==0) return 0;
int sum= 0;
while (stack.Count>0)
{
Position busStop=(Position)stack.Pop();
if (Math.Abs(busStop.x-xPosition.x)+Math.Abs(busStop.y-xPosition.y)<=walkingDistance)
sum++;
}
return sum;
}
public class Position
{
public int x=0;
public int y=0;
}
]]>re: Google緙栫▼鎸戞垬璧?50鍒嗛鐩強絳旀http://www.tkk7.com/FinalFantasy/archive/2005/12/15/23893.html#24020SpiritSpiritThu, 15 Dec 2005 05:32:00 GMThttp://www.tkk7.com/FinalFantasy/archive/2005/12/15/23893.html#24020 public class SkipStones {
private String water = "...X...";
public int maxDistance(String water) {
this.water = water;
int max = 0;
int sum = 0;
for (int initial = 1; initial < water.length() + 1; initial++) {
sum = bounce(0, initial);
max = (sum > max ? sum : max);
}
return max;
}
private int bounce(int startDistance, int bounceDistance) {
if (bounceDistance == 0)
return startDistance;
if ((startDistance + bounceDistance) > water.length())
return -1;
if (water.charAt(startDistance + bounceDistance - 1) == 'X')
return startDistance;