首页 > 其他分享 >新赛道-2024年CSP-J/S 十一连测(四)-T1

新赛道-2024年CSP-J/S 十一连测(四)-T1

时间:2024-09-01 20:38:01浏览次数:10  
标签:赛道 100005 int pr 乘加 ne T1 2024 id

题目描述

王老师脑袋一拍,定义了乘加运算!

他定义 a∗bc=(a+b)×c 。

而且他觉得用括号来规定运算的先后顺序太麻烦了,他给乘加运算定义了一个权值的系数(为乘加运算的下标),权值大的乘加运算先进行。

例如下面的表达式:

=====​9 ∗34​ 9 ∗12​ 1 ∗23​ 6 ∗41​ 29 ∗34​ 9 ∗12​ 1 ∗23​ (6+1)×2    因为∗41​权值最大(4),所以先运算(9+4)×9 ∗12​ 1 ∗23​ 14117 ∗12​ (1+3)×14(117+2)×566664​

现在王老师 给你一个只含有乘加运算的表达式,希望你能帮他求出最后的值。

数据范围

对于 100% 的数据,保证:1≤n≤105,0≤ai​,ci​≤109,−109≤bi​≤109。

测试点编号数据范围特殊性质
1∼3 n≤100
4∼8 n≤1000
9 无限制 ai​=0
10∼14 无限制 bi​=0
15∼20 无限制

根据题目可知,我们需要使用一种能够快速插入删除元素的容器,所以不难想到用链表解决,其次数据量非常大,需要开long long

代码:

#include <bits/stdc++.h>
using namespace std;
#define int long long
int n,pr[100005],ne[100005],id[100005],a[100005];
struct no{
    int x,y;
}b[100005];
bool tmp(int x,int y){
    return b[x].y>b[y].y;
}
signed main(){
    freopen("mulsum.in","r",stdin);
    freopen("mulsum.out","w",stdout);
    ios::sync_with_stdio(0);
    cin.tie(0);cout.tie(0);
    cin>>n;
    for(int i=1;i<=n;i++)cin>>a[i];
    for(int i=1;i<n;i++)cin>>b[i].x;
    for(int i=1;i<n;i++)cin>>b[i].y,id[i]=i,pr[i]=i-1,ne[i]=i+1;
    sort(id+1,id+n+1,tmp);
    for(int i=1;i<n;i++){
        int x=id[i];
        a[ne[x]]=(a[x]+b[x].x)*a[ne[x]];
        pr[ne[x]]=pr[x],ne[pr[x]]=ne[x];
    }
    cout<<a[n];
    return 0;
} 总结:在赛场上我其实想到了链表做法,可不会实现,链表的基础操作应该更加熟练。

标签:赛道,100005,int,pr,乘加,ne,T1,2024,id
From: https://www.cnblogs.com/qianqian2022/p/18391689

相关文章

  • 北京交通大学交通运输学院2024级迎新大会
    一、主持二、会上提到了几个会议:ICTTS、ISROR、RailBeijing三、就业单位四、各实验室的视频。这句话也可以用一用五、关于新生班主任六、关于代表学生发言这是第八个年头了,说来惭愧,我既没有大脑班本身的论文,也没有卷王班满记的成绩,但转念一想,我这一路走来有许多......
  • FIT1047 Introduction to computer systems, networks and security
    FIT1047 Introductiontocomputersystems, networksand security-S2 2024Assignment2– Processesand MARIE ProgrammingPurposeProcessesandprogramsarewhatmakescomputers do what we want them to do. Inthefirst partofthisassig......
  • 【Leetcode_Hot100】哈希
    哈希1.两数之和49.字母异位词分组128.最长连续序列1.两数之和方法一:HashMap在元素放入数组之前就进行判断,保证了不会取出同一个元素的情况,,例如[3,3],如果先将数组中的所有元素放入hashMap,再判断是否存在,则返回结果为[1,1],不符合题意。classSolution{publicint[......
  • 20240908_030339 编程剪辑 读取音频对像获得音频时长
    需求有一个目录里存放了多个音频文件我们要获取这些音频文件的相关信息编写一个方法接收音频文件的目录返回音频信息列表示例......
  • 2024年8月文章一览
    2024年8月编程人总共更新了3篇文章:1.2024年7月文章一览2.《ProgrammingfromtheGroundUp》阅读笔记:p95-p1023.《ProgrammingfromtheGroundUp》阅读笔记:p103-p1168月,对自己而言是糟糕的一个月,两个项目要赶,从月初赶到月底。一路战战兢兢,如履薄冰,好在终于赶在月底顺利完成......
  • [20240829]关于依赖链3.txt
    [20240829]关于依赖链3.txt--//如果修改表结构或者改名,相关的sql语句在共享池会失效,必须重新分析,我开始学习orcle时候,一直认为这些相关信息保存在表对象--//句柄的堆0里面,如果涉及到的sql语句很多,这样堆0应该很大,而实际上的情况上堆0一直没有变化.我曾经问过别人这个问题,......
  • [20240827]分析为什么出现library cache lock等待事件2.txt
    [20240827]分析为什么出现librarycachelock等待事件2.txt--//前几天一直在分析如果表不存在的情况下,密集执行为什么出现librarycachelock等待事件,而且出现的mode=2(共享模式),按照道--//理不应该阻塞,做一个分析.1.环境:SCOTT@book01p>@ver2==============================......
  • [20240828]分析为什么出现library cache lock等待事件5.txt
    [20240828]分析为什么出现librarycachelock等待事件5.txt--//前几天测试遇到的问题,假如表不存在的情况下,如果密集执行这类sql语句,不理解为什么出现librarycachelock等待事件.--//验证如果有1个会话,是否会持有mode=3的情况出现.--//上午使用gdb设置断点来验证,这次直接密集......
  • [20240829]关于依赖链.txt
    [20240829]关于依赖链.txt--//如果修改表结构或者改名,相关的sql语句在共享池会失效,必须重新分析,我开始学习orcle时候,一直认为这些相关信息保存在表对象--//句柄的堆0里面,如果涉及到的sql语句很多,这样堆0应该很大,而实际上的情况上堆0一直没有变化.我曾经问过别人这个问题,最......
  • [20240826]奇怪ORA-01031 insufficient privileges报错.txt
    [20240826]奇怪ORA-01031insufficientprivileges报错.txt--//遇到的奇怪ORA-01031insufficientprivileges情况,做一个分析:1.环境:SYS@book01p>@ver2==============================PORT_STRING                  :x86_64/Linux2.4.xxVERSION     ......