题解 | #QQ10 石子合并#(模拟)

石子合并

https://www.nowcoder.com/practice/3eef8d66b0fa4f71a8498974547fe670

解题思路

1.可证明任意合并顺序所获得分均一样,简单模拟即可;

代码

#include <bits/stdc++.h>
using namespace std;

int main(){
    int n;
    cin >> n;
    vector<int> w(n);
    for(int i = 0; i < n; i++){
        cin >> w[i];
    }
    int score = 0, sum = w[0];
    for(int i = 1; i < n; i++){ //任意合并顺序得分均一样
        score += sum * w[i]; //sum表示前一个石堆的石子个数
        sum += w[i];
    }
    cout << score;
    return 0;
}
全部评论

相关推荐

头像
04-09 14:29
Java
点赞 评论 收藏
转发
点赞 收藏 评论
分享
牛客网
牛客企业服务