java吧 关注:1,227,886贴子:12,688,138

京东笔试题,水一发

只看楼主收藏回复

1.N(1<=N<=9)个小熊分一堆苹果,第一只小熊将苹果分成N份,多了一个,扔掉,然后拿走自己的那一份。第二只熊将剩余的苹果分成N份,又多了一个,扔掉,然后拿走自己的那一份,第三只.....,直到第N只熊;问最初的苹果有多少个?
2.6*6的矩阵,从左上方开始,只经过向下或向右的步骤,到达右下方,找出经过的位置的最大价值;
200,120,400,150,180,300
150,250,360,120,200,130
350,300,250,100,500,260
100,150,260,320,100,150
500,130,260,100,200,170
160,100,250,200,600,200
代码:http://www.oschina.net/code/snippet_1275171_51042


IP属地:湖北1楼2015-09-18 21:39回复
    虽然都做得出来,然而并没有什么卵用,因为我竟然连简历筛选都没过


    IP属地:湖北2楼2015-09-18 21:44
    收起回复
      标记下


      IP属地:北京来自Android客户端3楼2015-09-18 23:18
      回复
        第一题咋算


        来自Android客户端4楼2015-09-18 23:22
        收起回复
          马克思主义哲学思想政治教育考试院长沙市委书记调整心态平和别的事儿


          IP属地:北京来自Android客户端5楼2015-09-18 23:47
          回复
            小熊是将苹果均分成N份吗?熊的智商还挺高


            IP属地:河南来自iPhone客户端6楼2015-09-19 00:00
            收起回复
              看看


              IP属地:陕西8楼2015-09-19 00:19
              回复
                第一个递归,第二个二维数组,


                IP属地:北京来自iPhone客户端9楼2015-09-19 00:21
                收起回复
                  这波经验不亏


                  来自iPhone客户端10楼2015-09-19 00:22
                  回复
                    mark


                    IP属地:北京来自Android客户端11楼2015-09-19 01:03
                    回复
                      第一个递归,第二个,我得用for和if,第二题有啥好方法没


                      IP属地:北京来自Android客户端12楼2015-09-19 01:28
                      收起回复
                        ((((x*N+1)*N+1)*N+1).....)
                        第二题只能所有情况跑一遍


                        IP属地:江苏来自Android客户端13楼2015-09-19 01:38
                        回复
                          第二题用的是dp.新建一个二维数组或者直接修改原数组,每一格子的值是其左与上的两个值中的较大值加上本格子的值。先把最上一行和最左一行算出来,然后从1.1坐标开始按照上边那个算法更新到右下角,return 右下角的值


                          来自iPhone客户端14楼2015-09-19 01:39
                          收起回复
                            楼主第一题做错了。
                            /*
                            2 : 7
                            3 : 25
                            4 : 253
                            5 : 3121
                            6 : 46651
                            7 : 823537
                            8 : 16777209
                            9 : 387420481
                            */
                            public class Apple {
                            public static void main(String[] args) {
                            for (int n = 1; n < 10; n++) {
                            for (int apple = 1; apple < Integer.MAX_VALUE; apple++) {
                            int temp = apple;
                            int i;
                            for (i = 1; i <= n; i++) {
                            if (temp % n == 1) {
                            temp = temp - temp / n - 1;
                            } else {
                            break;
                            }
                            }
                            if (i > n && temp >= 1) {
                            System.out.println(n+" : " + apple);
                            break;
                            }
                            }
                            }
                            }
                            }


                            IP属地:湖南15楼2015-09-19 02:41
                            收起回复
                              我在报警,剩下的说什么?十五个字了?


                              来自Android客户端16楼2015-09-19 08:21
                              回复