蓝桥杯第几个幸运数
到x星球旅行的游客都被发给一个整数,作为游客编号。
x星的国王有个怪癖,他只喜欢数字3,5和7。
国王规定,游客的编号如果只含有因子:3,5,7,就可以获得一份奖品。


我们来看前10个幸运数字是:
3 5 7 9 15 21 25 27 35 45
因而第11个幸运数字是:49


小明领到了一个幸运数字 59084709587505,他去领奖的时候,人家要求他准确地说出这是第几个幸运数字,否则领不到奖品。


请你帮小明计算一下,59084709587505是第几个幸运数字。

import java.util.ArrayList;
import java.util.List;

public class Main { 
	
    public static void main(String[] args) {
    	List<Long> list = new ArrayList<Long>();
    	list.add(new Long(1));
    	list.add(new Long(3));
    	list.add(new Long(5));
    	list.add(new Long(7));
    	long san = 1;
    	long wu = 1;
    	long qi = 1;
    	
    	while(!list.get(list.size()-1).equals(new Long(59084709587505L))){
    		long sanbei = list.get((int)san) * 3;
    		long wubei = list.get((int)wu) * 5;
    		long qibei= list.get((int)qi) * 7;
    		
    		Long min = min(sanbei,wubei,qibei);
    		if(min==sanbei){
    			san++;
    		}
    		if(min==wubei){
    			wu++;
    		} 
    		if(min==qibei){
    			qi++;
    		}
    		list.add(min);
    	}
    	System.out.println(list.size());
    	
    } 
    
    static Long min(Long a,Long b,Long c){
    	Long temp = a<b?a:b;
    	return temp<c?temp:c;
    }

 
} 

阅读更多
个人分类: 蓝桥杯
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

蓝桥杯第几个幸运数

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭