一、问题理解
我们需要找出数组中所有"特殊元素"并计算它们的平方和。特殊元素是指其下标(从1开始)能被数组长度整除的元素。
二、关键点分析
三、实现详解
获取数组长度:使用nums.size()获取n值
遍历数组:从1到n循环检查每个下标
条件判断:n%i==0时即为特殊元素
平方累加:注意实际数组访问是nums[i-1]
四、实现代码
class Solution {public: int sumOfSquares(vector<int>& nums) { int n = nums.size(); // 获取数组长度 int sum = 0; // 初始化平方和为0 // 遍历数组,注意题目要求下标从1开始 for(int i = 1; i <= n; i++) { // 检查当前下标是否是特殊元素 if(n % i == 0) { // 计算平方并累加(注意数组实际下标是i-1) sum += nums[i-1] * nums[i-1]; } } return sum; // 返回最终平方和 }};
五、边界情况考虑
空数组:题目保证n≥1
单个元素数组:该元素一定是特殊元素
所有元素都是特殊元素:当n=1时
點(diǎn)擊查看更多內(nèi)容
為 TA 點(diǎn)贊
評論
評論
共同學(xué)習(xí),寫下你的評論
評論加載中...
作者其他優(yōu)質(zhì)文章
正在加載中
感謝您的支持,我會繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦