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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

【2018.3.10】模拟赛之三-ssl2576 平台

發布時間:2023/12/3 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【2018.3.10】模拟赛之三-ssl2576 平台 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄地址

前言

水題不想說,連自帶快排都懶得用了


正題

有n個平臺,每個平臺頭尾有兩根柱子支撐到地板或另一個平臺上,求支撐平臺需要的柱子數


輸入輸出(需要自取)

Input

輸入文件platforme.in第一行包括1個整數N,1 ≤ N ≤ 100,即平板的總數。
接下來的N行每行都是一塊平板的坐標,是相應的Y,X1和 X2。即高度和水平的邊緣坐標。所有的數都是不大于10000的正整數且滿足X2 > X1+1(也可這樣理解,每一塊平板的長度至少為2)。
輸入保證任意兩塊平板間沒有重疊部分。

Output

輸出文件platforme.out要撐起所有平板所需的支柱的總長度。

Sample Input

3
1 5 10
3 1 5
5 3 7

Sample Output

14


解題思路

排一下高度,然后用數組表示每個x坐標處最高的平臺。然后每次更新


代碼

#include<cstdio> #include<algorithm> using namespace std; struct wood{int h,x1,x2; }a[101]; int sum,n,hi[10001]; int main() {//freopen("platforme.in","r",stdin);//freopen("platforme.out","w",stdout);scanf("%d",&n);for (int i=1;i<=n;i++){scanf("%d%d%d",&a[i].h,&a[i].x1,&a[i].x2);a[i].x2-=1;}for (int i=1;i<n;i++)for (int j=i+1;j<=n;j++){if (a[i].h>a[j].h) swap(a[i],a[j]);}//冒泡for (int i=1;i<=n;i++){sum+=a[i].h-hi[a[i].x1];sum+=a[i].h-hi[a[i].x2];//計算兩根柱子for (int j=a[i].x1;j<=a[i].x2;j++) hi[j]=a[i].h;//更新}printf("%d",sum);//輸出return 0; } 創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的【2018.3.10】模拟赛之三-ssl2576 平台的全部內容,希望文章能夠幫你解決所遇到的問題。

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