首页 > TAG信息列表 > EOJ

EOJ 2995. 科学计数法 个人解题记录

2995. 科学计数法 题干 任给一个十进制正数 M>0 (M 可能为整数或小数,且最多包含 200 位数字)。写一个程序将其转换成科学计数法表示,形式为 aFb。其中 1≤a<10 且不含前置 0,a 的长度为给定精度 p (p 包括 a 中整数及小数部分但不包含小数点)。a 的值由四舍五入方法确定,M 中有效数字长

EOJ 3024 个人错误分析

      3024. 八进制小数 单点时限: 2.0 sec 内存限制: 256 MB 写一个程序将 0 与 1 (不包括 0 和 1)之间的八进制数转化为等价的十进制数。 例如,八进制数 0.75 就是十进制数 0.953125(7×8−1+5×8−2)。 小数点右边有 n 位的所有八进制数都可以转化为小数

EOJ 3039 按整数最高位的值排序个人错误分析

3039. 按整数最高位的值排序 单点时限: 2.0 sec 内存限制: 256 MB 有 N 个整数 (整数−1018≤整数≤1018),要求按照整数十进制表示的最高位的值从大到小进行排序。若两个数的最高位的值相同,则按照数本身值由小到大排序。 例如:100,15,0,30,7,−15,100,−100,22222222

EOJ数据结构1088 dijkstra算法 优先队列实现

用优先队列实现了dijkstra算法,写了两个函数说不定其他题也能用用,dijkstra(start,n)是找到从start到n的所有点的最短路径权值,dijkstra2(start,end,n)是在n个点中找到start到n的最短路径,输出都是最短路径以及最短路径数和一条最短路径 代码如下 #include<bits/stdc++.h> #define max

2021秋季《数据结构》_ EOJ 1096.Building Roads

题目 Farmer John had just acquired several new farms! He wants to connect the farms with roads so that he can travel from any farm to any other farm via a sequence of roads; roads already connect some of the farms. 思路 将已经连接上的点放进同一个并查集中

2021秋季《数据结构》_EOJ 1085.华师大卫星照片

题目 jim 通过 Google 得到了华师大WH像素的卫星照片( 1 ≤ W ≤ 80 ,

EOJ_1081_朋友圈

//每个俱乐部的第一个人是老大,但是要知道每个俱乐部的老大是不是别人的小弟, //原则是,每次合并关系,都是老大和老大的比较 #include<bits/stdc++.h> using namespace std; int parent[30003]; int findParent(int parent[], int i) { int tmpi = i; while(parent[i]

EOJ_1064_树的层号表示法

#include <bits/stdc++.h> using namespace std; struct node { int lev; char data; node* parent; vector<node*> sons; }; node arr[30]; node* buildTree(node arr[], int n) //返回树根节点 { node* tree = &arr[0]; node* p = tr

EOJ_1063_树的双亲存储法

#include<bits/stdc++.h> using namespace std; vector<int> parents[1000002]; void postOrder(int parent) { for(int i=0; i<parents[parent].size() ;i++){ postOrder(parents[parent][i]); } cout<< parent <<"

EOJ Monthly 2021.10

比赛链接 EOJ Monthly 2021.10 B. Secret 众所周知,在苹果发布会前,所有即将被公布的新产品都是绝密。 我们可以认为苹果的所有员工之间的关系构成一张关系图,两个员工的关系密切,则两个员工之间会有一条边相连(给我们认为关系是双向的),员工的索引是从 \(1\) 到 \(n\) 递增的整数,假设每

EOJ_1015_查字典

#include <bits/stdc++.h> #define MAX 20004 using namespace std; //入队列和出队是队列 //查询操作可以加一个map int q[MAX]={0}; int head=0; int tail=0; map<int, bool> table; int main() { int m,n; cin>>m>>n; int res=0; for(int i=0;i<

EOJ Monthly 2021.9 Sponsored by TuSimple A&D

EOJ Monthly 2021.9 Sponsored by TuSimple A&D A.Amazing DiscoveryD. Divide and Merge A.Amazing Discovery #include<cstdio> #include<cstring> #include<string> #include<iostream> #include<algorithm> using namespace std; ty

EOJ:2018 年计算机系夏令营机考

EOJ地址:https://acm.ecnu.edu.cn/contest/97/ 纯个人解法,如有更简单的方法,欢迎交流。 Problem A. 图像卷积(easy) #include<bits/stdc++.h> using namespace std; int n,m,h,w; int main(){ cin>>n>>m; vector<int> myvect[n]; for(int i =0;i<n;i++){ for(int

EOJ Monthly 2021.2 C. 今我来思(sì)【线段树】

题目链接   首先,很容易想到的是,我们不妨直接就对这个区间进行更新了,譬如区间[l, r]的最小值为x,那么我们直接去对这个区间进行更新,但是很容易就会发现一个误区,如果目前[l, r]已经被赋值为x,现在又对相同的[l, r]区间说它是最小值为y的,这时候怎么进行记录?所以,这时候我们想到了,对于每

EOJ二月月赛补题

A:昔我往矣 lca+dfs序,先做出所有点的dfs序,然后对于每一个询问,以dfs序最小和最大的为两个端点,然后往里面加点相当于加上一条分叉出去的链,用LCA求解即可。 下附代码: 1 #include<bits/stdc++.h> 2 #define ll long long 3 using namespace std; 4 const ll INF=0X3f3f3f3f3f

EOJ 7月月赛

EOJ 7月月赛 D. 给你一个字符串,你现在需要的是将它的每一个前缀看成单独的字符串,最终组成最大的一个整数。 ​ 分析,可以想到,两个前缀A,B组成的字符串,其大小由相对顺序决定,不妨设|A|<|B|。B=A+X,则最终的大小取决于A+X于X+A的字典序大小。这个直接通过SA就可以解决。最终通过排序来

EOJ Monthly 2020.3 D. 钢琴演奏家

Cuber QQ 在疫情期间已经宅在家两个月了。 实在是无所事事的他,决定重操旧业,继续实现他曾经梦寐的钢琴演奏家梦想。 掀开积满了灰尘的钢琴盖,是他许久都未触碰的琴键,按下的瞬间,他发现,钢琴坏了。 Cuber QQ 有一个多年的弹奏习惯,他弹奏钢琴,同一时刻一定会同时按下 m 个琴键,他喜欢

EOJ#3686 回文串

单点时限: 2.0 sec 内存限制: 512 MB QQ小方前不会判断回文数列,现在他会了,所以他急切的想教会你。 回文数列指的是一个正读和反读都一样的数列,比如 “1 2 3 2 1” 和 “1 2 2 1”。 单单讲给你听肯定是不够的,为了表现自己,QQ 小方现在要考考你。 现在 QQ 小方会给你 n 个数组

EOJ Monthly 2019.11 A(进制转换)

“欢迎您乘坐东方航空公司航班 MU5692 由银川前往上海......” “我们的飞机很快就要起飞了,请收起小桌板,摘下耳机......” 收起了小桌板,摘下了耳机,Cuber QQ 突然无所事事了。 放耳机进书包的时候,Cuber QQ 无意带出了一些小纸条。是以前的回忆。 纸条在书包中已经存在了不知道多久

[EOJ Monthly2019.11][T4]安全带

以下是题干 D. 安全带 单点时限: 1.0 sec 内存限制: 256 MB (前面题干是一堆废话,我把它删了) 简单来说:初始给出一个 n 个点顺次连接而成的环,点有点权,边权是两个端点的点权乘积。现在给出一些特殊点,这些特殊点是向其他所有点都有连边,如果连边时发现两点之间已经有边,不会再次连接(即图

EOJ 1224. 简单迷宫问题

      题意:走迷宫,求最短路径,上下左右走一格花费1,走到有怪的格子花费2.     思路:将每一点的坐标和由起点到该点的距离存入结构体.     由起点开始,将该点存入优先队列,以到起点的距离dis为优先级,每次取出dis最小的,向外扩散。     相当于第一轮得出所有到起点距离为1的点

EOJ#1224. 简单迷宫问题

单点时限: 2.0 sec 内存限制: 256 MB 一天,sunny 不小心进入了一个迷宫,不仅很难寻找出路,而且有的地方还有怪物,但是 sunny 有足够的能力杀死怪物,但是需要一定的时间,但是 sunny 想早一点走出迷宫,所以请你帮助他计算出最少的时间走出迷宫,输出这个最少时间。 我们规定每走一格需

EOJ Monthly 2019.2 E. 中位数 (二分+dfs)

题目传送门 题意: 在一个n个点,m条边的有向无环图中,求出所有从1到n 的路径的中位数的最大值 一条路径的中位数指的是:一条路径有 n 个点, 将这 n 个点的权值从小到大排序后,排在位置 ⌊n2⌋+1 上的权值。   思路: 看到权值为1~1e9,可以想到用二分答案,然后我们在验证的时候 可以将小于mid

【EOJ Monthly 2019.02 - B】解题(思维,抽屉原理,暴力,模运算,优化,tricks)

题干: 单测试点时限: 2.0 秒 内存限制: 1024 MB “我把房门上锁,并非为了不让她进去,而是为了防止自己逃到她身边”。 她又被数学难住了。QQ 小方当然是不会对女生说”不”的。 她的数学题是这样的,她得到了一个十进制大整数,这个大整数只包含 1 - 9 这 9 个数字。 现在,要求选出其中

EOJ Monthly 2019.2

题解 A 回收卫星 #pragma GCC optimize(2)#pragma GCC optimize(3)#pragma GCC optimize(4)#include<bits/stdc++.h>using namespace std;#define y1 y11#define fi first#define se second#define pi acos(-1.0)#define LL long long//#define mp make_pair#define pb push