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

quot 网站建设话术 quot郑州专业建网站

quot 网站建设话术 quot,郑州专业建网站,网站被挂黑链对网站有啥影响,南阳建站公司小蓝的班上有 n n n 个人#xff0c;一次考试之后小蓝想统计同学们的成绩#xff0c;第 i 名同学的成绩为 a i a_i ai​ 。当小蓝统计完前 x x x 名同学的成绩后#xff0c;他可以从 1 ∼ x 1 ∼ x 1∼x 中选出任意 k k k 名同学的成绩#xff0c;计算出这 k k k 个成…小蓝的班上有 n n n 个人一次考试之后小蓝想统计同学们的成绩第 i 名同学的成绩为 a i a_i ai​ 。当小蓝统计完前 x x x 名同学的成绩后他可以从 1 ∼ x 1 ∼ x 1∼x 中选出任意 k k k 名同学的成绩计算出这 k k k 个成绩的方差。小蓝至少要检查多少个人的成绩才有可能选出 k k k 名同学他们的方差小于一个给定的值 T T T 提示 k k k 个数 v 1 , v 2 , ⋯ , v k v_1, v_2, \cdots, v_k v1​,v2​,⋯,vk​ 的方差 σ 2 σ^2 σ2 定义为 σ 2 ∑ k i 1 ( v i − v ′ ) / k σ^2∑ k_i1(v_i−v)/k σ2∑ki​1(vi​−v′)/k 其中 v ′ v v′ 表示 v v v 的平均值 v ′ ∑ k i 1 v i k v∑k_{i1} \frac{v_i}{k} v′∑ki1​kvi​​ 。 关键点 问题目标找到最小的 x x x使得在前 x x x 名同学的成绩中存在一个大小为 k k k 的子集其方差小于 T T T。 方差的含义 方差越小说明数据越集中。如果选择的 k k k 个数非常接近方差会很小。 解决思路 对前 x x x 名同学的成绩排序。使用 滑动窗口 检查所有连续的 k k k 个数的方差是否小于 T T T。通过 二分搜索 找到最小的 x x x。 #include iostream #include vector #include algorithm #include cmath using namespace std;// 计算 k 个数的方差 double calculateVariance(const vectorint nums, int start, int k) {double sum 0;for (int i start; i start k; i) {sum nums[i];}double mean sum / k; // 平均值double variance 0;for (int i start; i start k; i) {variance (nums[i] - mean) * (nums[i] - mean);}return variance / k; }// 检查前 x 个数中是否存在 k 个数的方差小于 T bool check(const vectorint a, int x, int k, double T) {vectorint subset(a.begin(), a.begin() x); // 取前 x 个数sort(subset.begin(), subset.end()); // 排序for (int i 0; i x - k; i) { // 滑动窗口double variance calculateVariance(subset, i, k);if (variance T) {return true;}}return false; }// 二分搜索找到最小的 x int findMinX(const vectorint a, int k, double T) {int n a.size();int left k, right n; // x 的最小值是 k最大值是 nint result n 1; // 初始化为一个不可能的值while (left right) {int mid left (right - left) / 2;if (check(a, mid, k, T)) {result mid; // 更新结果right mid - 1; // 尝试更小的 x} else {left mid 1; // 尝试更大的 x}}return result n ? result : -1; // 如果找到返回 x否则返回 -1 }复杂度分析 时间复杂度 排序 O ( x l o g x ) O(x\ log\ x) O(x log x)其中 x x x 是检查的人数滑动窗口检查方差 O ( x ) O(x) O(x)二分搜索 O ( l o g n ) O(log\ n) O(log n)总复杂度 O ( n l o g n ⋅ l o g n ) O(nlog\ n⋅logn) O(nlog n⋅logn) 空间复杂度 存储子集 O ( n ) O(n) O(n) 总结 通过排序和滑动窗口可以高效地检查是否存在满足条件的子集。二分搜索用于快速找到最小的 x x x。该方法在时间和空间复杂度上都是可行的适用于中等规模的数据。
http://www.w-s-a.com/news/838383/

相关文章:

  • 网站建设与管理网络推广的优点
  • 美食网站的设计与制作做网站的电销话术
  • 中国档案网站建设现状研究陕西建设厅执业资格注册中心网站
  • 网站建设的内容管理怎么用ps切片在dw里做网站
  • 建设婚恋网站用什么搭建涿州网站开发
  • 做知识内容的网站与app哈尔滨哪里有做网站的
  • 青岛企业网站建站模板百度网站建设推广
  • 做360网站中保存的图片存在哪里个人建立网站要多少钱
  • 网站安装部署无锡做网站的公司
  • 怎么将网站做成小程序安装wordpress到服务器
  • 企业网站建设的四大因素沈阳网站建设招标公司
  • wordpress仿站开发公司网站策划宣传
  • 金乡县网站开发网站开发三个流程
  • qq空间网站是多少纺织网站建设方案
  • 建设微网站项目报告网站优化难吗
  • 做网站需要自己上传产品吗企业网站系统设计
  • wordpress个人中心济南网站建设和优化
  • 网站pc端网址和手机端网址建设牡丹江 网站建设
  • 苏州新区城乡建设网站人才招聘网站开发
  • 一般网站是怎么做的威远移动网站建设
  • 赣州网站开发公司怎么才能设计好一个网站
  • 个人网站建设分几个步走培训网站开发哪个好
  • 智能网站价格河北城乡建设网站
  • 做动画在线观看网站网上花店 网站源代码
  • 做网站项目体会商业信息
  • 深圳的设计网站谷歌浏览器下载手机版官网
  • 苏州网站建设都找全网天下外贸响应式网站设计
  • 揭阳专业做网站网站迁移教材
  • 手机上怎么上传网站吗工程信息网站建设
  • 用手机建网站微信手机网站流程