目录
拓扑排序,并查集+dfs等方法都能做,但是我不会做😖(并查集写了半天错的,拓扑排序也敲不出来)
1、⚡️相乘
🔥题目描述
本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。 小蓝发现,他将 1 至 1000000007 之间的不同的数与 20212021 相乘后再求除以 1000000007的余数,会得到不同的数。 小蓝想知道,能不能在 1 至 1000000007之间找到一个数,与 20212021 相乘后 再除以 1000000007后的余数为 999999999。如果存在,请在答案中提交这个数; 如果不存在,请在答案中提交 0。
运行限制
- 最大运行时间:1s
- 最大运行内存: 128M
🎓思路
暴力模拟💪(记得用long long)
👉代码
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
using namespace std;
typedef long long ll;
int main(){
for(ll i=1;i<=1000000007;i++){
if(2021*i%1000000007==999999999){
printf("%lld",i);
}
}
return 0;
}
答案
17812964
2、🌳空间
🌟题目描述
本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。
小蓝准备用 256MB 的内存空间开一个数组,数组的每个元素都是 32 位 二进制整数,如果不考虑程序占用的空间和维护内存需要的辅助空间,请问 256MB 的空间可以存储多少个 32 位二进制整数?
运行限制
- 最大运行时间:1s
- 最大运行内存: 128M
🎓思路
计算机基础知识:
1MB=1024KB
1KB=1024B(字节)
1B=8b(位)
256MB=256*1024KB=256*1024*1024 B(字节)=256*1024*1024*8 b(位)
256*1024*1024*8 b(位)/32 b(位)=67108864
注意:数据值太大,可以用电脑自带的计算器计算或者进行约分后再计算
👉代码
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
using namespace std;
//256MB=256*1024KB=256*1024*1024 B(字节)=256*1024*1024*8 b(位)
int main(){
long long a=256*1024*1024/4;
cout<<a;
return 0;
}
答案
67108864
3、🌝发现环
发现环
⭐️题目描述
小明的实验室有 N 台电脑,编号1⋯N。原本这 NN 台电脑之间有 N−1 条数据链接相连,恰好构成一个树形网络。在树形网络上,任意两台电脑之间有唯一的路径相连。
不过在最近一次维护网络时,管理员误操作使得某两台电脑之间增加了一条数据链接,于是网络中出现了环路。环路上的电脑由于两两之间不再是只有一条路径,使得这些电脑上的数据传输出现了 BUG。
为了恢复正常传输。小明需要找到所有在环路上的电脑,你能帮助他吗?
✏️输入描述
输入范围:
第一行包含一个整数 N 。
以下 N 行每行两个整数 a,ba,表示 aa 和 bb 之间有一条数据链接相连。
其中,1≤N≤,1≤a,b≤N。
输入保证合法。
📕输出描述
按从小到大的顺序输出在环路上的电脑的编号,中间由一个空格分隔。
输入
5
1 2
3 1
2 4
2 5
5 3
💘输出
1 2 3 5
🎓思路
拓扑排序,并查集+dfs等方法都能做,但是我不会做😖(并查集写了半天错的,拓扑排序也敲不出来)
👉代码
(这里放上群里另一位大佬的博客)点此处进入