"思路:\n1. 遍历数组,记录相邻不同颜色的数字的位置。\n2. 从记录的位置开始,每次选择相邻的两个不同颜色的数字进行标记,并将得分累加。\n3. 输出最终得分。\n\n代码如下:\ncpp\n#include <iostream>\n#include <vector>\nusing namespace std;\n\nint main() {\n int n;\n cin >> n;\n \n vector<int> nums(n);\n for (int i = 0; i < n; i++) {\n cin >> nums[i];\n }\n \n string colors;\n cin >> colors;\n \n int score = 0;\n for (int i = 1; i < n; i++) {\n if (colors[i-1] != colors[i]) {\n score += nums[i-1] + nums[i];\n i++; // 跳过已经标记的数字\n }\n }\n \n cout << score << endl;\n \n return 0;\n}\n\n"

C++实现最大得分:相邻不同颜色数字标记算法

原文地址: https://www.cveoy.top/t/topic/pDgE 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录