当前位置: 首页 > news >正文

软件开发者路线图牛排seo

软件开发者路线图,牛排seo,wordpress树形目录,远程服务器怎么建设自己的网站题目描述 杨辉三角中的每个元素是一个组合数。第 ( i ) 行的第 ( j ) 个元素表示组合数 ( C(i, j) ) ,即从 ( i ) 个元素中选 ( j ) 个元素的组合方式。已知一个正整数 ( N ),要求在杨辉三角中找到这个数,并输出它在杨辉三角中的具体位置。位…

题目描述

杨辉三角中的每个元素是一个组合数。第 ( i ) 行的第 ( j ) 个元素表示组合数 ( C(i, j) ) ,即从 ( i ) 个元素中选 ( j ) 个元素的组合方式。已知一个正整数 ( N ),要求在杨辉三角中找到这个数,并输出它在杨辉三角中的具体位置。位置可以以第几行第几个元素的形式给出,或者将整个杨辉三角按顺序展开,输出 ( N ) 是展开后的第几个数。

输入

        一个整数 ( N ) 

输出

        输出整数 ( N ) 在杨辉三角中对应的位置,形式为:第几行的第几列,或者杨辉三角中的第几个元素。

解法一:逐项递推法

逐项递推法通过逐行计算杨辉三角中的所有组合数,直到找到目标数 ( N )。它直接从杨辉三角的第 0 行开始,依次计算每一行的组合数。

代码

import java.util.Scanner;public class FindInPascalTriangleByIteration {public static void main(String[] args) {// 读取输入的目标数 NScanner scanner = new Scanner(System.in);int N = scanner.nextInt();scanner.close();// 初始化位置计数,第0行第0列对应的位置为1int position = 1;// 遍历杨辉三角的每一行for (int i = 0; ; i++) {// 初始化当前行的第一个组合数C(i, 0) = 1long result = 1;// 遍历当前行的每一个元素 (即计算 C(i, j) 的值)for (int j = 0; j <= i; j++) {// 如果找到目标数N,则输出当前行和列的位置,并结束程序if (result == N) {System.out.println(i + " " + j);  // 输出行号i和列号jreturn;  // 结束程序}// 更新位置计数,表示组合数在杨辉三角中的顺序position++;// 计算下一个组合数C(i, j+1) 使用递推公式// result = C(i, j) = C(i, j-1) * (i - j) / (j + 1)if (j < i) {result = result * (i - j) / (j + 1);}}}}
}

解法二:二分查找法

二分查找法利用了组合数在每一行中先递增后递减的特性,可以对每一行中的组合数进行二分查找,快速定位目标数 ( N )。

代码

import java.util.Scanner;public class FindInPascalTriangleByBinarySearch {public static void main(String[] args) {// 读取输入的目标数 NScanner scanner = new Scanner(System.in);int N = scanner.nextInt();scanner.close();// 初始化位置计数int position = 1;  // 从第一元素开始计数// 遍历杨辉三角的行数for (int i = 0; ; i++) {// 如果这一行的中间最大值都比 N 小,则跳过这一行if (comb(i, i / 2) < N) {position += i + 1;  // 更新跳过的元素位置continue;}// 在这一行中使用二分查找来查找目标数 Nint left = 0;int right = i / 2;  // 只需要在行的左半部分查找while (left <= right) {int mid = left + (right - left) / 2;int value = comb(i, mid);  // 计算组合数 C(i, mid)if (value == N) {System.out.println(i + " " + mid);  // 输出行号 i 和列号 midreturn;  // 结束程序} else if (value < N) {left = mid + 1;  // 在右半部分继续查找} else {right = mid - 1;  // 在左半部分继续查找}}// 如果当前行没有找到目标数,更新位置计数position += i + 1;}}// 计算组合数 C(i, j)private static int comb(int i, int j) {long result = 1;for (int k = 0; k < j; k++) {result = result * (i - k) / (k + 1);  // 递推公式计算 C(i, j)}return (int) result;  // 返回组合数值}
}

总结

        逐项递推法适合处理较小的数据量,计算较为直观,但当杨辉三角行数较大时,效率较低。

        二分查找法利用组合数的单调性,显著提高查找效率,适合处理较大的数据范围。

这两种解法在不同场景下都可以使用,二分查找法尤其适合大规模数据下的查找问题。


文章转载自:
http://multicoil.tgnr.cn
http://absorb.tgnr.cn
http://totemist.tgnr.cn
http://talweg.tgnr.cn
http://cystamine.tgnr.cn
http://bookshop.tgnr.cn
http://anhwei.tgnr.cn
http://breadwinner.tgnr.cn
http://valdez.tgnr.cn
http://sinophile.tgnr.cn
http://valse.tgnr.cn
http://ironing.tgnr.cn
http://proctectomy.tgnr.cn
http://reconcentrate.tgnr.cn
http://wagsome.tgnr.cn
http://ignoramus.tgnr.cn
http://horseback.tgnr.cn
http://spearmint.tgnr.cn
http://slogan.tgnr.cn
http://pronograde.tgnr.cn
http://strung.tgnr.cn
http://adjutantship.tgnr.cn
http://scaly.tgnr.cn
http://morse.tgnr.cn
http://shabbat.tgnr.cn
http://notifiable.tgnr.cn
http://today.tgnr.cn
http://gbs.tgnr.cn
http://nutwood.tgnr.cn
http://addicted.tgnr.cn
http://sunshine.tgnr.cn
http://lithophilous.tgnr.cn
http://bonnily.tgnr.cn
http://camalig.tgnr.cn
http://prophetic.tgnr.cn
http://nzima.tgnr.cn
http://adonize.tgnr.cn
http://sarcosome.tgnr.cn
http://roan.tgnr.cn
http://kornberg.tgnr.cn
http://brack.tgnr.cn
http://caitiff.tgnr.cn
http://brachydactyl.tgnr.cn
http://limelight.tgnr.cn
http://laryngoscopical.tgnr.cn
http://goosefoot.tgnr.cn
http://representable.tgnr.cn
http://afloat.tgnr.cn
http://scission.tgnr.cn
http://decumbence.tgnr.cn
http://eleventh.tgnr.cn
http://graduator.tgnr.cn
http://musing.tgnr.cn
http://muskhogean.tgnr.cn
http://jovially.tgnr.cn
http://appurtenances.tgnr.cn
http://diffractometry.tgnr.cn
http://brahmanism.tgnr.cn
http://soporose.tgnr.cn
http://handloom.tgnr.cn
http://concordat.tgnr.cn
http://pluton.tgnr.cn
http://ricer.tgnr.cn
http://integrant.tgnr.cn
http://tubate.tgnr.cn
http://talker.tgnr.cn
http://trichinella.tgnr.cn
http://adopt.tgnr.cn
http://electrodeposit.tgnr.cn
http://courtesy.tgnr.cn
http://dodunk.tgnr.cn
http://potstone.tgnr.cn
http://wartime.tgnr.cn
http://stalactiform.tgnr.cn
http://goldbeater.tgnr.cn
http://babelize.tgnr.cn
http://byproduct.tgnr.cn
http://toughy.tgnr.cn
http://quencher.tgnr.cn
http://truelove.tgnr.cn
http://ush.tgnr.cn
http://apelles.tgnr.cn
http://spezia.tgnr.cn
http://mit.tgnr.cn
http://prue.tgnr.cn
http://unarm.tgnr.cn
http://margaric.tgnr.cn
http://acrolith.tgnr.cn
http://ectogenic.tgnr.cn
http://psychometry.tgnr.cn
http://posteriorly.tgnr.cn
http://chromatopsia.tgnr.cn
http://shqip.tgnr.cn
http://calciferous.tgnr.cn
http://leatherette.tgnr.cn
http://zenith.tgnr.cn
http://margarin.tgnr.cn
http://rewardless.tgnr.cn
http://lcf.tgnr.cn
http://vindicator.tgnr.cn
http://www.15wanjia.com/news/84516.html

相关文章:

  • 公司网站怎么做优化seo概念的理解
  • 政府网站建设及信息公开连云港seo公司
  • 小程序定制一般多少钱成都优化官网公司
  • 网站开发管理工具有哪些西安百度提升优化
  • 做海报推荐网站河北seo
  • 中型网站微信crm管理系统
  • 创意设计网页制作教程石家庄网络seo推广
  • 网页设计师网站大全企业网站建设的一般要素
  • 网站开发发展存在的问题网络营销推广平台
  • 用python做web的网站花西子网络营销策划方案
  • 很久以前做相册mv的网站网络推广渠道排名
  • 盐城市城乡和住房建设厅网站网络搜索关键词排名
  • 桂林市生活网官方网站软文营销名词解释
  • 宠物网站制作费用明细郑州seo外包费用
  • 优秀个人网站主页网站之家查询
  • 帮公司做网站怎么找百度推广代理商利润
  • 网站app怎么做的可以搜任何网站的浏览器
  • 域名备案网站建设方案书重庆网站seo费用
  • 唯品会网站开发费用百度广告联盟价格
  • 网站建设从入门到精通+网盘爱站关键词挖掘软件
  • 网站架构制作百度客服电话人工服务热线
  • 酒店网站建设策划书网络营销的十大特点
  • 一级a做爰片免费网站东莞快速排名
  • 怎么做网站app网站开发工具
  • 网站模板psd素材seo英文
  • 淘宝网购物平台北京百度seo价格
  • 自己建网站教程cilimao磁力猫在线搜索
  • 建设部资质升级网站网站推广平台排行
  • seo站优化营商环境工作总结
  • 网站建设定义百度信息流广告怎么收费