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

竭诚网络网站建设公司朝阳seo排名优化培训

竭诚网络网站建设公司,朝阳seo排名优化培训,佛山网站网站建设,网站认证打款怎么做分录396. 旋转函数 问题描述 给定一个长度为 n 的整数数组 nums 。 假设 arrk 是数组 nums 顺时针旋转 k 个位置后的数组,我们定义 nums 的 旋转函数 F 为: F(k) 0 * arrk[0] 1 * arrk[1] ... (n - 1) * arrk[n - 1] 返回 F(0), F(1), ..., F(n-1)中…

396. 旋转函数

问题描述

给定一个长度为 n 的整数数组 nums

假设 arrk 是数组 nums 顺时针旋转 k 个位置后的数组,我们定义 nums旋转函数 F 为:

  • F(k) = 0 * arrk[0] + 1 * arrk[1] + ... + (n - 1) * arrk[n - 1]

返回 F(0), F(1), ..., F(n-1)中的最大值

生成的测试用例让答案符合 32 位 整数。

示例 1:

输入: nums = [4,3,2,6]
输出: 26
解释:
F(0) = (0 * 4) + (1 * 3) + (2 * 2) + (3 * 6) = 0 + 3 + 4 + 18 = 25
F(1) = (0 * 6) + (1 * 4) + (2 * 3) + (3 * 2) = 0 + 4 + 6 + 6 = 16
F(2) = (0 * 2) + (1 * 6) + (2 * 4) + (3 * 3) = 0 + 6 + 8 + 9 = 23
F(3) = (0 * 3) + (1 * 2) + (2 * 6) + (3 * 4) = 0 + 2 + 12 + 12 = 26
所以 F(0), F(1), F(2), F(3) 中的最大值是 F(3) = 26 。

示例 2:

输入: nums = [100]
输出: 0

提示:

  • n == nums.length
  • 1 <= n <= 105
  • -100 <= nums[i] <= 100

解题思路与代码实现

    class Solution {/*** 解题思路:* 暴力破解失败* 找规律,发现F(i+1)和F(i)的关系:F(i+1)=F(i)+数组和-数组长度n*nums[n-1](旋转i个位置的nums数组)* 可以先计算F(0)和数组和,nums[n-1]则从初始nums数组的最后一个元素开始向左移动,一共移动n-1次* 然后根据关系依次计算比较得到最大值*/public int maxRotateFunction(int[] nums) {int initVal = 0;  // 计算F(0)int sum = 0;    // 记录数组和for (int i = 0; i < nums.length; i++) {initVal += i * nums[i];sum += nums[i];}int res = initVal;  // 记录最终结果int nextVal = initVal; // 记录F(i+1)int index = nums.length - 1;while (index > 0) {// F(i+1)nextVal = nextVal + sum - nums.length * nums[index];index--;// 比较取较大值res = Math.max(res, nextVal);}return res;}}

关键点

找规律,发现F(i+1)和F(i)的关系:F(i+1)=F(i)+数组和-数组长度n*numsn-1

http://www.dtcms.com/wzjs/100329.html

相关文章:

  • 济南网站建设流程建站平台哪家好
  • 网站服务器和vps做一台百度网盟推广怎么做
  • 漳州网站建设今日特大新闻新事
  • 南京做网站哪家好石家庄网站seo
  • 一级域名 二级域名 目录网站推广电商网站
  • 万网如何上传网站互联网推广招聘
  • 网站建设的市场有多大网站建设制作专业
  • 太原网站建设地图常见的网络营销平台有哪些
  • 网站维护 静态页面服务器租用
  • 部门网站建设seo分析
  • 公司网站推广如何做现在如何进行网上推广
  • 东莞做个网站百度网盘优化
  • 建设部网站证书查询网页设计工作室长沙
  • wordpress 获得当前url重庆seo推广公司
  • 加强机关网站内容建设今日热点
  • 残疾人无障碍网站怎么做武汉网络关键词排名
  • 男人和女人做羞羞的免费网站郴州网站建设网络推广渠道
  • 58同城招聘 招聘网许昌seo推广
  • 手机网站与PC网站长春seo排名扣费
  • 中国建设银行东莞市网站提高工作效率的工具
  • 网站视频主持人网临沂网站建设公司哪家好
  • 东莞品牌网站设计公司网址如何下载视频
  • 安卓毕业设计代做网站青岛seo关键词
  • 罗马尼亚网站后缀长沙网站开发
  • 湖南建网站设计网络推广方案
  • 虚拟主机如何做网站国外免费建站网站搭建
  • 网站制作加教程视频网站制作培训
  • 建设网站好公司哪家好手机导航下载2022新版
  • 企业为什么做网站 图片国际军事新闻
  • 网站每天一条推送怎么做的优化网络推广外包