最少数量货物装箱

最少数量货物装箱问题

http://www.nowcoder.com/questionTerminal/37aa8a88a72e47f798a14d63bee61d8f

O(1)数论解法:

import java.util.*;
public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        int X = sc.nextInt();
        if(X == 1 || X == 2 || X == 4){
            System.out.println(-1);
            return;
        }
        int[] v = {0, 1, 2, 1, 2, 1, 2};//这是循环规律,周期长度为7
        System.out.println(X/7 + v[X%7]);
    }
}
全部评论
数学归纳法证明:1.归纳基:已知7,8,9,10,11,12,13都能被3,5,7表示出来。2.假设[7k,7k+6]区间的整数能被3,5,7表示出来,那么[7(k+1),7(k+1)+6]区间的整数也都能被3,5,7表示出来,且最小加数增量为{0,1,2,1,2,1,2}.证毕。
1 回复 分享
发布于 2020-05-08 20:26
大佬!!!!
点赞 回复 分享
发布于 2020-08-05 22:59

相关推荐

码农索隆:想看offer细节
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务