public class Main4 {     public static void main(String[] args) {         Scanner sc = new Scanner(System.in);         int year = sc.nextInt();         int increase = 2;         int cowCount = 0;         // key为age,value为数量         Map<Integer, Integer> map = new TreeMap<Integer, Integer>();         // 1岁的牛只有一头,初始化值         map.put(1, 1);         while(increase <= year){             // 更新map中的key,表示年龄             Map<Integer, Integer> newCows = new TreeMap<Integer, Integer>();             // 表示存储具有生育能力的牛的数量             int canBorn = 0;             for(Entry<Integer, Integer> entry:map.entrySet()){                 if(entry.getKey() + 1 <= 10){                     newCows.put(entry.getKey() + 1, entry.getValue());                     if(entry.getKey() >= 2 && entry.getKey() <= 6){                         // 年龄在3-7岁,生一只牛                         canBorn += entry.getValue();                     }                 }             }             if(canBorn != 0){                 newCows.put(1, canBorn);             }             map = newCows;             increase++;         }                  for(Entry<Integer, Integer> entry:map.entrySet()){             cowCount += entry.getValue();         }         System.out.println(cowCount);     } }
点赞 评论

相关推荐

12-15 14:16
门头沟学院 Java
回家当保安:发offer的时候会背调学信网,最好不要这样。 “27届 ”和“28届以下 ”公司招聘的预期是不一样的。
实习简历求拷打
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务