辞酒 2017-07-29 02:42 采纳率: 100%
浏览 1712
已采纳

c++算法题 坐电梯 数据结构

小G 来到了著名的CIGOM 大厦。大厦一共有n 层,初始的时候小G 在第A
层。小G 特别想去B 层小M 的办公室看一看,然而因为安保原因,B 层已经被
封锁无法进入。
但是小G 既然来了,就想在大厦里面逛一逛。大厦里面有一部电梯,小G 决
定坐k 次电梯。因为小G 比较无聊,他给自己设定了这样一个规矩:假如当前他
在x 层,则他要去的下一个楼层y 和x 的楼层差必须要小于x 和B 的楼层差。每到达一个楼层,小G 都要记录下来其楼层号。
当小G 转完一圈后,他也记录下了k +1 个楼层号(可能有重复)。小G 现在想知道,按照他定下的规矩,一共有多少种可能的楼层号序列?

输入格式

输入文件一行,4 个数字n; A;B; k,含义如题目所述。

输出格式

输出一个数字,表示可能的楼层号序列的数量。答案对109 + 7 取模。

样例输入
5 2 4 1
样例输出
2

  • 写回答

2条回答

  • CasvotLee 2017-07-29 03:11
    关注

    首先 ,这是一个数学题;其次这肯定还要对y和x的差值分类(即下一层在此楼上还是下),可以使用分支语句,分支后根据给定的条件找出y的范围(y-x<x-B)),y确定后就好办了;使用两重循环找出所有的组合,然后累加,当然期间还要去除相同排列的情况。
    另一种情况也相同。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 求一个临界热流密度查询表程序
  • ¥15 关于浏览器调试工具断点失效的问题
  • ¥15 pubsub.js无法订阅到消息
  • ¥15 非正弦供电多相感应电机毕业设计
  • ¥15 请用asp语言将得到一组数组转换为图片
  • ¥15 stm32f103c8t6采集HLK-LD2450毫米波雷达传感器数据并打印显示距离和角度
  • ¥15 不重复生成字母+数字交易号
  • ¥15 AD封装导入后层混乱了
  • ¥15 如何将excel中的数据导入ansys中
  • ¥15 MATLAB中图像问题