查看“︁08-基础算法/02-简单枚举”︁的源代码
←
08-基础算法/02-简单枚举
跳转到导航
跳转到搜索
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
== 简单枚举 == 枚举(枚举法/穷举法)是最直观的算法思想:'''列出所有可能的情况,逐一检查是否符合要求'''。 === 基本模板 === <syntaxhighlight lang="cpp"> for (int i = 1; i <= n; i++) for (int j = 1; j <= n; j++) for (int k = 1; k <= n; k++) if (check(i, j, k)) ans++; </syntaxhighlight> === 优化方向 === * '''减少枚举范围''':通过数学分析减少不必要的枚举 * '''剪枝''':在枚举过程中提前排除不可能的方案 * '''改变枚举顺序''':先枚举约束多的变量 * '''使用哈希表''':用空间换时间(如两数之和问题) === 经典例题 === {| class="wikitable" ! 题型 !! 说明 |- | 百钱买百鸡 | 枚举鸡的数量,满足总价和总数 |- | 水仙花数 | 枚举三位数,各位立方和等于自身 |- | 完全平方数 | 枚举范围内的完全平方数 |- | 勾股数 | 枚举直角三角形的三条边 |} [[Category:基础算法]] [[Category:三三文档]]
返回
08-基础算法/02-简单枚举
。
导航菜单
个人工具
登录
命名空间
页面
讨论
大陆简体
查看
阅读
查看源代码
查看历史
更多
搜索
导航
首页
最近更改
随机页面
MediaWiki帮助
特殊页面
工具
链入页面
相关更改
页面信息