P3406 海底高铁 (洛谷) 题目背景 大东亚海底隧道连接着厦门、新北、博艾、那霸、鹿儿岛等城市,横穿东海,耗资1000亿博艾元,历时15年,于公元2058年建成。凭借该隧道,从厦门可以乘坐火车直达台湾、博艾和日本,全程只需要4个小时。 题目描述 该铁路经过N个城市,每个城市都有一个站。不过,由于各个城市之间不能
笑死,本来打算先写T4的,结果是当时T4暴力都扣不出来,又去扣T3,只拿了60分,最后爬回来写的T1。 题面 时间空间限制:1.0s 125.0MB 思路 注意:此处的时间复杂度分析可能有误。 考虑暴力:用一个数组记录经过这一段铁路的次数,然后遍历每一段铁路,计算使用IC卡和不使用IC卡的花费,取最小值累加即可。时间复杂度: ...
suma[i] = suma[i -1] + a[i]; sumb[i] = sumb[i -1] + b[i]; sumc[i] = sumc[i -1] + c[i]; }for(inti =1; i <= m-1; i++) {intmaxx =max(p[i], p[i +1]);intminn =min(p[i], p[i +1]); cha[minn]++; cha[maxx -1+1]--; }for(inti =1; i <...
大东亚海底隧道连接着厦门、新北、博艾、那霸、鹿儿岛等城市,横穿东海,耗资1000亿博艾元,历时15年,于公元2058年建成。凭借该隧道,从厦门可以乘坐火车直达台湾、博艾和日本,全程只需要4个小时。 题目描述 该铁路经过N个城市,每个城市都有一个站。不过,由于各个城市之间不能协调好,于是乘车每经过两个相邻的城市之间(方...
差分:【Luogu P3406】海底高铁,P3406海底高铁-洛谷|计算机科学教育新生态(luogu.com.cn)给定一段一段的(两个端点),用差分可以在知道端点的情况下对区间加加或减减AC:#include<bits/stdc++.h>usingnamespacestd;constintN=1e5+5;typedeflonglongLL;intn,m;inta[N
题目背景 大东亚海底隧道连接着厦门、新北、博艾、那霸、鹿儿岛等城市,横穿东海,耗资1000亿博艾元,历时15年,于公元2058年建成。凭借该隧道,从厦门可以乘坐火车直达台湾、博艾和日本,全程只需要4个
(P3406 海底高铁)差分数组的应用 差分数组就是 两项的差值组成的数组。 int a[10] = {1,2,3,4,5,6,7,8,9}; // 差分数组 int c[10] = {1,3,5,9,14,20,27,35,44}; //原数组 1 2 3 4 差分数组与原数组相当于是逆运算。 a数组的前缀和就是c数组 c数组 a[i] = c[i] - c[i...
大东亚海底隧道连接着厦门、新北、博艾、那霸、鹿儿岛等城市,横穿东海,耗资1000亿博艾元,历时15年,于公元2058年建成。凭借该隧道,从厦门可以乘坐火车直达台湾、博艾和日本,全程只需要4个小时。 题目描述 该铁路经过N个城市,每个城市都有一个站。不过,由于各个城市之间不能协调好,于是乘车每经过两个相邻的城市之间(方...
P3406 海底高铁题解区间修改可以用差分思想,统计每个点出现次数用前缀和,最后取最小值 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 #include<bits/stdc++.h> using namespace std; const int maxn=100009; int p[maxn],v[maxn]; long ...
P3406 海底高铁 题目链接https://www.luogu.com.cn/problem/P3406 【解题思路】前缀和、查分 对于其中一小段,我们要么全部买纸票,要么全部刷卡。 所以我们只需要统计每一小段经过的总次数。 如果你暴力模拟统计的话,估计会tle。 怎么快速知道每一段次数呢?