博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Hackerrank - Game Of Rotation 题解
阅读量:6161 次
发布时间:2019-06-21

本文共 698 字,大约阅读时间需要 2 分钟。

旋转一个数组以得到最大值。

陷阱就是:不能排序。须要模拟操作旋转,并设计公式计算旋转后的和。

要求是O(n)时间完毕。

原题:

https://www.hackerrank.com/challenges/game-of-rotation

#pragma once#include 
class GameOfRotation{public: GameOfRotation() { int N = 0; scanf("%d", &N); int *A = new int[N]; long long one = 0, sum = 0, ans = 0; for (int i = 0; i < N; i++) { scanf("%d", &A[i]); one += (long long)A[i]; sum += (long long)(i+1) * (long long)A[i]; } ans = sum; for (int i = 1; i < N; i++) { sum = sum - one + (long long)A[i-1] * (long long)N; ans = ans < sum ? sum : ans; } printf("%lld", ans); delete [] A; }};int gameOfRotation(){ GameOfRotation(); return 0;}

转载于:https://www.cnblogs.com/yutingliuyl/p/6749324.html

你可能感兴趣的文章
PHP 简单计算器代码实现
查看>>
正则表达式的知识普及
查看>>
docker使用笔记
查看>>
华为eNSP模拟器上实现FTP服务
查看>>
【全球AI人才排行榜】美国第一,中国仅排名第7
查看>>
微信小程序输入框input
查看>>
MySql字符串函数使用技巧
查看>>
Doc2Vec,Word2Vec文本相似度 初体验。
查看>>
系统ghost后变成一个盘了别的分区的文件怎么找回
查看>>
Win7+Ubuntu11
查看>>
请问华为三层交换机里面的那个从IP是个什么意思? -
查看>>
kFeedback开源啦
查看>>
大数据传输,文件传输的专业解决方案!
查看>>
阿里云专家穆轩的《杭州九年程序员之“修炼”手册》
查看>>
JQuery:deferred对象的方法
查看>>
eyoucms问答 百度权重是什么
查看>>
win10中遇到qq视频时摄像头打不开没反应的解决方法
查看>>
介绍自己的一个Android插桩热修复框架项目QuickPatch
查看>>
关于textarea的ie9的maxlength不起作用的问题,请参考如下URL解决。
查看>>
Solr Facet 查询
查看>>