11 条题解
-
1
很简单, 问题,这么水,好久没刷了。数据范围 ,记得开个 保平安。
#include<iostream> using namespace std; int main(){ long long a,b; cin>>a>>b; cout<<a+b; return 0; }
-
1
蒟蒻刚学的线段树,话不多说,上线段树做法:
#include<iostream> using namespace std; long long a[50],segt[50]; void build(int l,int r,int num){ //递归建线段树 if(l==r) segt[num]=a[l]; else{ int mid=(l+r)/2; build(l,mid,num*2); build(mid+1,r,num*2+1); segt[num]=segt[num*2]+segt[num*2+1]; } } long long query(int l,int r,int lnow,int rnow,int num){ if(l<=lnow&&rnow<=r) return segt[num]; else{ long long ans=0; int mid=(l+r)/2; if(l<=mid) ans+=query(l,r,lnow,mid,num*2); if(r>=mid+1) ans+=query(l,r,mid+1,rnow,num*2+1); return ans; } } int main(){ cin>>a[1]>>a[2]; build(1,2,1); //建树 cout<<query(1,2,1,2,1); //查询区间[1,2]的和 }
整体思想就是把 看成一个区间,最后可以便利地进行查询。
-
1
这基本上是萌新刷的第一道题吧(如果你第一道刷的是
Hello, World
就当我没说)废话不多说,虽然我说了句废话,但因为我又多说了句废话,所以这话还是废话^v^
好了,上代码:
#include <bits/stdc++.h> /* 万能头文件,也可以使用 iostream 或 cstdio (如果使用 cstdio 就要把 cin 和 cout 换成 scanf 和 printf ) */ using namespace std; /* 调用 std ,如果使用 cstdio 可以不调用 */ int main() { /* 主函数 */ long long a, b; /* 定义两个长整型变量 a 和 b */ cin >> a >> b; /* 输入 a 和 b */ a += b; /* 此时变量 a 是原先的 a 和 b 的和 */ cout << a; /* 输出,不做解释,虽然做了解释^v^ */ return 0; /* 结束 */ }
/* 我大发慈悲再写一个 cstdio 的 */ #include <cstdio> int main() { long long a, b; scanf("%lld %lld", &a, &b); printf("%lld", a + b); return 0; }
注:本篇题解是在 蛇年新年将到时写的,所以在此祝大家新年快乐!
-
0
蒟蒻的第一篇题解 题目很简单,给你两个数a、b,求他们的和然后输出。 那么既然很简单,我再贴一份快读模板
#include <iostream> using namespace std; inline long long read()// 快读模板 { long long x=0,f=1; char ch=getchar(); while(ch<'0' || ch>'9') { if(ch=='-') f=-1; ch=getchar(); } while(ch>='0' && ch<='9') { x=(x<<3)+(x<<1)+ch-'0'; ch=getchar(); } return x*f; } int main() { long long a=read(),b=read();//记得要开long long printf("%lld\n",a+b); return 0; }
最后祝大家2025新年快乐
- 1
信息
- ID
- 4451
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 1
- 标签
- 递交数
- 1632
- 已通过
- 551
- 上传者