1. 1,8,9,4,1,()。括号里的数为多少?答:1/6 1^4 2^3 3^2 4^1 5^0 6^-1
2. 2瓶空啤酒换一瓶啤酒,一元可以买一瓶啤酒,问20元口喝多少瓶啤酒?答:我觉得是40瓶。
20元买20瓶酒
20个空瓶换10瓶酒
10个空瓶换5瓶酒
5个空瓶换2瓶酒(余1个空瓶)
2个空瓶换1瓶酒
1个空瓶加上前面余下的1个空瓶换1瓶酒
1个空啤酒借一个空啤酒换1瓶,喝掉换个空啤酒给他。
20+10+5+2+1+1+1=40
3. 求最长连续递增数字串(如“ads3sl456789DF3456ld345AA”中的“456789”)
package algorithm;
import java.util.Scanner;
/**
* 求最大连续递增数字串(如“ads3sl456789DF3456ld345AA”中的“456789”)
* @author Administrator
*
*/
public class MaxIncreasingString {
public static void main(String[]args)
{
Scanner scanner=new Scanner(System.in);
String s=scanner.nextLine();
findMaxIncreasingString(s);
}
public static void findMaxIncreasingString(String str)
{
int begin=0;
int end=0;
int maxLength=0;
int tempLength=0;
for(int i=0,j=0;j<str.length();j++)
{
char c=str.charAt(j);
if(isDigit(c))
{
if(c-str.charAt(j-1)==1)
{
tempLength+=1;
if(tempLength>maxLength)
{
maxLength=tempLength;
begin=i;
end=j;
}
}else{
tempLength=0;
i=j;
}
}
}
System.out.println("the max increasing string of str is:"+str.substring(begin,end+1));
}
public static boolean isDigit(char c)
{
return c>='0'&&c<='9';
}
}
4.
旅客等候检票 ,检票 的速度一样 5个窗口需30分6个 口只需20分钟,10分钟需几个窗口?
答:
设原来有x人,每分钟有y人加入,10分钟检完要n个检口,根据每个检口每分钟检的速度一样得 (x+30y)/(5*30)=(x+20y)/(6*20)=(x+10y)/(10*n) 解得n=9