日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

牛客 共鸣问题(思维难题)

發布時間:2024/7/5 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 牛客 共鸣问题(思维难题) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

    • 1. 題目
    • 2. 解題

1. 題目

鏈接:https://ac.nowcoder.com/acm/contest/10325/B
來源:牛客網

現在有n個音符和m對共鳴關系,編號為1~n,
每個音符自己有一個奏響時的優美程度,
共鳴關系(x,y,z)表示音符x和y同時奏響的額外優美程度是 z,同時不奏響則為 -z,其他情況為0。
音符可以選擇奏響或者不奏響,不奏響的音符沒有優美程度。
我們想知道最大的優美程度和是多少,我們不需要知道具體是哪些音符被奏響了,只需輸出最大和即可。

共鳴關系可能有重復,其共鳴效果也會重復疊加。

示例1 輸入 2,1,[-10,-10],[[1,2,5]] 返回值 -5備注: 數據包括兩個數n,m,一個長度為n的數組a[], 表示每個音符奏響時的優美程度(a[0]表示第一個音符), 一個第一維長度為m的二維數組,描述m組共鳴關系。 輸出一個整數表示答案。 n,m<=100000,所有的優美程度和額外優美程度的絕對值<=33000

2. 解題

class Solution { public:/*** 代碼中的類名、方法名、參數名已經指定,請勿修改,直接返回方法規定的值即可* * @param n int整型 * @param m int整型 * @param a int整型vector * @param b int整型vector<vector<>> * @return long長整型*/long long wwork(int n, int m, vector<int>& a, vector<vector<int> >& b) {// write code here// 初始為都沒有奏響,收益是 -zlong long ans = 0;vector<long long> delta(n, 0);for(int i = 0; i < m; ++i) {ans -= b[i][2]; // 都沒有響 -zdelta[b[i][0]-1] += b[i][2];//響一個的話 +z,跟上面的-z抵消為0delta[b[i][1]-1] += b[i][2];//同時響的話,為z}for(int i = 0; i < n; i++){if(a[i]+delta[i] > 0)//收益為正ans += a[i]+delta[i];}return ans;} };

我的CSDN博客地址 https://michael.blog.csdn.net/

長按或掃碼關注我的公眾號(Michael阿明),一起加油、一起學習進步!

總結

以上是生活随笔為你收集整理的牛客 共鸣问题(思维难题)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。