牛牛和牛妹在感叹现代科技日新月异的同时,也不忘关注着环保事业。 今天,牛牛和牛妹一同来到了戈壁滩种树,他们决定在同一排种下一共 棵小树,已知每棵小树的存活率相同,现在,牛牛和牛妹想要知道,在这 棵树中,恰好有 棵树存活时,最终这排小树形成的风景线会有多少种不同的情况。 由于最终答案可能很多,所以只需要输出对 取模后的结果。-笔试面试资料

这是qklbishe.com第5888 篇笔试面试资料
提供答案分析,通过本文《牛牛和牛妹在感叹现代科技日新月异的同时,也不忘关注着环保事业。

今天,牛牛和牛妹一同来到了戈壁滩种树,他们决定在同一排种下一共 棵小树,已知每棵小树的存活率相同,现在,牛牛和牛妹想要知道,在这 棵树中,恰好有 棵树存活时,最终这排小树形成的风景线会有多少种不同的情况。

由于最终答案可能很多,所以只需要输出对 取模后的结果。-笔试面试资料》可以理解其中的代码原理,这是一篇很好的求职学习资料
本站提供程序员计算机面试经验学习,笔试经验,包括字节跳动/头条,腾讯,阿里,美团,滴滴出行,网易,百度,京东,小米,华为,微软等互联网大厂真题学习背诵。

答案:
牛牛和牛妹在感叹现代科技日新月异的同时,也不忘关注着环保事业。

今天,牛牛和牛妹一同来到了戈壁滩种树,他们决定在同一排种下一共 牛牛和牛妹在感叹现代科技日新月异的同时,也不忘关注着环保事业。      今天,牛牛和牛妹一同来到了戈壁滩种树,他们决定在同一排种下一共  棵小树,已知每棵小树的存活率相同,现在,牛牛和牛妹想要知道,在这  棵树中,恰好有  棵树存活时,最终这排小树形成的风景线会有多少种不同的情况。      由于最终答案可能很多,所以只需要输出对  取模后的结果。 棵小树,已知每棵小树的存活率相同,现在,牛牛和牛妹想要知道,在这 牛牛和牛妹在感叹现代科技日新月异的同时,也不忘关注着环保事业。      今天,牛牛和牛妹一同来到了戈壁滩种树,他们决定在同一排种下一共  棵小树,已知每棵小树的存活率相同,现在,牛牛和牛妹想要知道,在这  棵树中,恰好有  棵树存活时,最终这排小树形成的风景线会有多少种不同的情况。      由于最终答案可能很多,所以只需要输出对  取模后的结果。 棵树中,恰好有 牛牛和牛妹在感叹现代科技日新月异的同时,也不忘关注着环保事业。      今天,牛牛和牛妹一同来到了戈壁滩种树,他们决定在同一排种下一共  棵小树,已知每棵小树的存活率相同,现在,牛牛和牛妹想要知道,在这  棵树中,恰好有  棵树存活时,最终这排小树形成的风景线会有多少种不同的情况。      由于最终答案可能很多,所以只需要输出对  取模后的结果。 棵树存活时,最终这排小树形成的风景线会有多少种不同的情况。

由于最终答案可能很多,所以只需要输出对 牛牛和牛妹在感叹现代科技日新月异的同时,也不忘关注着环保事业。      今天,牛牛和牛妹一同来到了戈壁滩种树,他们决定在同一排种下一共  棵小树,已知每棵小树的存活率相同,现在,牛牛和牛妹想要知道,在这  棵树中,恰好有  棵树存活时,最终这排小树形成的风景线会有多少种不同的情况。      由于最终答案可能很多,所以只需要输出对  取模后的结果。 取模后的结果。

牛牛和牛妹在感叹现代科技日新月异的同时,也不忘关注着环保事业。      今天,牛牛和牛妹一同来到了戈壁滩种树,他们决定在同一排种下一共  棵小树,已知每棵小树的存活率相同,现在,牛牛和牛妹想要知道,在这  棵树中,恰好有  棵树存活时,最终这排小树形成的风景线会有多少种不同的情况。      由于最终答案可能很多,所以只需要输出对  取模后的结果。 Wayne_Tao

#include <iostream> #define MAX 1000000007 using namespace std; long long calculate(int n, int k){     if (n < k || k < 0) return 0;     int m_k = k;     if(n < 2 * k) m_k = n - k;     long long result = 1;     for(int i = 0; i < m_k; i++){         result *= (n - i);         if(result > MAX) result = result % MAX;     }     for(int i = 1; i < m_k; i++){         while(1){             if(result % (i+1) != 0) result += MAX;             else{                 result /= (i+1);                 break;             }         }     }     return result % MAX; } int main(){     int count = 0;     int n = 0, k = 0;     cin >> count;     for( int i = 0; i < count; i++){         cin >> n >> k;         cout << calculate(n, k) << "n";     }     return 0; }

这个题应该是算排列组合,但问题是数量庞大,如果用递归,应该是时间不够用,然后改成循环,并且注意取模的问题。

分子边乘边取模,只要大于就取模

分母,因为原来排列组合的结果是可以除尽的,所以这里用个循环加模,来除尽。

这部分好像是数学的知识,密码学学过模相关,忘记了,后面再康康怎么搞,暂时取上面的算法吧。

2021-01-13 20:52:12 回复(0)

文章部分来自互联网,侵权联系删除
www.qklbishe.com

区块链毕设网(www.qklbishe.com)全网最靠谱的原创区块链毕设代做网站
部分资料来自网络,侵权联系删除!
资源收费仅为搬运整理打赏费用,用户自愿支付 !
qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台 » 牛牛和牛妹在感叹现代科技日新月异的同时,也不忘关注着环保事业。 今天,牛牛和牛妹一同来到了戈壁滩种树,他们决定在同一排种下一共 棵小树,已知每棵小树的存活率相同,现在,牛牛和牛妹想要知道,在这 棵树中,恰好有 棵树存活时,最终这排小树形成的风景线会有多少种不同的情况。 由于最终答案可能很多,所以只需要输出对 取模后的结果。-笔试面试资料

提供最优质的资源集合

立即查看 了解详情