
杭电OJ记录
CherryTaylor
这个作者很懒,什么都没留下…
展开
-
杭电OJ记录--1014
1014–伪随机数要求:随机输入STEP和MOD(最大至100000),seed(x+1) = [seed(x) + STEP] %MOD,若结果可取到从0至MOD-1,则good,反之则bad。分析:seed(x+1) = [seed(x) + STEP] %MOD当STEP和MOD的最大公约数等于1的时候,seed可以取到从0至MOD-1问题转换成了判断两个大数的最大公约数是否为1注意:输出的对齐格式可以不写 因为要求的数字右对齐就是默认的对齐方式字母从第25行开始 也原创 2021-08-26 22:46:00 · 226 阅读 · 0 评论 -
杭电OJ记录--1013
1013–计算数的根大数,用字符串存储注意字符串的输入格式 getline(cin, a)————AC代码————#include <iostream>#include <string>using namespace std;int main() { int len, root = 0; string a ; while (getline(cin, a) && a != "0") { //用双引号 for (len = a.s原创 2021-08-21 22:54:49 · 225 阅读 · 0 评论 -
杭电OJ记录--1012
1012–精确计算e注意输出格式与题目一致前三行直接输出之后小数部分保留九位有效数字,不够则补0————AC代码————#include <iostream>#include <iomanip>using namespace std;int main() { int n = 0, i = 1; double fm = 1.0; double *a = new double[10]; //存放 1/(i!),i从0到9共10项 a[0] = 1.原创 2021-08-20 17:48:21 · 265 阅读 · 0 评论 -
杭电OJ记录--1005
1005–计算f(1) = 1, f(2) = 1, f(n) = (A * f(n - 1) + B * f(n - 2)) mod 7.要注意的问题是因为有内存和编译时间的限制【time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)】且题目中明确说了n最大到一亿,如果直接用递归必然MLE,所以要找到规律(我MLE那么多次之前怎么就没想过呢……)规律递推,f(n)可能的取值是6 5 4原创 2021-08-19 17:43:17 · 354 阅读 · 0 评论 -
杭电OJ记录--1004
1004–最受欢迎的气球关于new和delete的格式!!!!数组 int *a = new int [5];//不能赋初值 delete [ ] a;//[ ]很重要单独的一个数据 int *a = new int; //没有初始值 int *b = new int(10); //有初始值,注意用小括号 delete a; delete b;输出数量最多的气球颜色,比较的是气球个数(数组中的数据),修改的是下标(maxindex)————AC代码————#include原创 2021-08-19 17:16:59 · 285 阅读 · 0 评论 -
杭电OJ记录--1001
1001–求和n+(n-1)+……+1————AC代码————//In this problem, your task is to calculate SUM(n) = 1 + 2 + 3 + ... + n.#include <iostream>using namespace std;int SUM(int n) { if (n <= 1) return n; else return (n + SUM(n - 1));}int main() { int n原创 2021-08-19 17:02:47 · 170 阅读 · 0 评论 -
杭电OJ记录--1000
1000–简单求和————以下AC代码————#include <iostream>using namespace std;int main() { int A, B; while (cin >> A >> B) { cout << A + B << endl; } return 0;}原创 2021-08-19 16:57:29 · 89 阅读 · 0 评论 -
杭电OJ记录--1008
1008--读题要注意:首先,每一组结束之后要返回底层(0);其次,输入的一组数据中,第一个数表示停几次,后面的数字分别表示在几层停————以下代码————#include <iostream>using namespace std;int main() { int to_floor, now_floor; //分别表示目的楼层和当前所在楼层 int n; //表示一共停几次 int time; //表示一共用时; while (cin原创 2021-08-19 16:52:35 · 246 阅读 · 0 评论