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

歡迎訪(fǎng)問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

51nod 1402最大值

發(fā)布時(shí)間:2025/7/25 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 51nod 1402最大值 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1402?最大值? 題目來(lái)源:?TopCoder 基準(zhǔn)時(shí)間限制:1?秒 空間限制:131072?KB 分值:?20?難度:3級(jí)算法題 ?收藏 ?關(guān)注 一個(gè)N長(zhǎng)的數(shù)組s[](注意這里的數(shù)組初始下標(biāo)設(shè)為1,而不是0,即N個(gè)元素為s[1],s[2],...,s[N]),滿(mǎn)足以下性質(zhì):
1)每個(gè)元素都是非負(fù)的整數(shù),且s[1]=0;
2)任意兩個(gè)相鄰元素差值的絕對(duì)值不大于1,即| s[i]-s[i+1] |<=1;
3)對(duì)于部分特殊點(diǎn)xi,要求s[xi]<=ti(這樣的特殊點(diǎn)一共M個(gè));
問(wèn)在以上約束下s[]中的最大值最大可能是多少? Input 多組測(cè)試數(shù)據(jù),第一行一個(gè)整數(shù)T,表示測(cè)試數(shù)據(jù)數(shù)量,1<=T<=5 每組測(cè)試數(shù)據(jù)有相同的結(jié)構(gòu)構(gòu)成: 第一行兩個(gè)整數(shù)N,M,表示s[]的長(zhǎng)度與特殊點(diǎn)的個(gè)數(shù),其中1<=N<=100000,0<=M<=50. 之后M行,每行兩個(gè)整數(shù)xi與ti,其中1<=xi<=N,0<=ti<=100000,且xi以增序給出。 Output 每組數(shù)據(jù)一行輸出,即數(shù)組的可能最大值。 Input示例 3 10?2 3?1 8?1 100000?0 2718?5 1?100000 30?100000 400?100000 1300?100000 2500?100000 Output示例 3 99999 2717

nm算法可以過(guò)。先初始化a[i] = i-1 ,每輸入一個(gè)一個(gè)xi 和 ti 就更新下a數(shù)組。當(dāng)然也有O(n)和O(m)算法, 1 #include <bits/stdc++.h> 2 using namespace std; 3 const int N = 1e5+10; 4 int a[N], t, n, m, xi, ti; 5 int main() { 6 ios::sync_with_stdio(false); 7 cin >> t; 8 while(t--) { 9 cin >> n >> m; 10 for(int i = 1; i <= n; i ++) a[i] = i-1; 11 for(int i = 0; i < m; i ++) { 12 cin >> xi >> ti; 13 if(ti >= xi-1) continue; 14 if(a[xi] > ti) { 15 int j = 0; 16 while(xi+j <= n) { 17 if(a[xi+j] > ti+j) { 18 a[xi+j] = ti+j; 19 } 20 j++; 21 } 22 j = 1; 23 while(xi-j >= 1) { 24 if(a[xi-j] > ti+j) { 25 a[xi-j] = ti+j; 26 } 27 j++; 28 } 29 } 30 } 31 int MAX = -1; 32 for(int i = 1; i <= n; i ++) MAX = max(MAX, a[i]); 33 printf("%d\n",MAX); 34 } 35 return 0; 36 }

?

轉(zhuǎn)載于:https://www.cnblogs.com/xingkongyihao/p/8980747.html

總結(jié)

以上是生活随笔為你收集整理的51nod 1402最大值的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。