大佬帮忙,90分最后一个WA,看一下思路对么?
查看原帖
大佬帮忙,90分最后一个WA,看一下思路对么?
410986
hulhul楼主2023/2/7 17:14

0, 0,... ,1,1,1

0, 0,... ,1,1,[3--n]

0, 0,... ,1,2,2

0, 0,... ,1,2,[4--n]

0, 0,... ,1,1,1,2

0, 0,... ,1,1,2,3

特殊的例子:

1,1

应该就是这几种了吧,当k>=5之后,答案就与k无关了吧。 具体的,当n>5,k>5,答案应该是 n - 1 + n - 2 + 1 + 1 = n * 2 - 1

为什么我的思路过不了最后一个用例? 最后一个用例的第2组数据, 传入的n=9223372036854775807,k为一个18位数。 我计算答案是:

1999043918960165887

标准答案是:

1999043918960165907

if (k >= 4) {
            //base1: 0, ... ,1,1,not(2)={1,3,4,5, ... ,n}
            //base2: 0, ... ,1,2,not(3)={2,4,5, ... , n}
            if (n == 1) {
                ans = 1L;
            } else if (n == 2) {
                ans = 2L;
            } else if (n == 3) {
                ans = 3L;
            } else {
                ans = n - 1 + n - 2;
            }

            if (k >= 5) {
                if (n > 1) {
                    //base3: 0, ... ,1,1,1,2
                    ans++;
                }
                if (n > 2) {
                    //base3: 0, ... ,1,1,2,3
                    ans++;
                }
            }
        }
        return ans;
    }
2023/2/7 17:14
加载中...