1005

https://acm.hdu.edu.cn/showproblem.php?pid=6954)

思路:边权为lcm(a,b)。因为lcm(a,b)=a*b/gcm(a,b),所以有两种情况:

1:当前顶点x为质数,则只需将当前顶点与2号顶点相连即可。因为:二是最小质数,gcm(2,x)=1。所以lcm(2,x)=2x/1=2x。
2:当前顶点x为合数,则将x与x的约数相连,lcm(x,x的约数)=x;

其中判断当前顶点是否为质数需要用到线性筛(欧拉筛),模板如下:

int prime[maxn];//
int visit[maxn];
void Prime()
{mem(visit,0);mem(prime, 0);for (int i = 2;i <= maxn; i++) {if (!visit[i]) prime[++prime[0]] = i;      for (int j = 1; j <=prime[0] && i*prime[j] <= maxn; j++) {visit[i*prime[j]] = 1;if (i % prime[j] == 0)break;}}
}

完整代码如下:

#define _CRT_SECURE_NO_WARNINGS
#include<cstdio>
#include<iostream>
#include<vector>
#include<string>
#include<algorithm>
#define maxn 10000005
using namespace std;
typedef long long ll;
int vis[maxn] = { 0 };
vector<int> prime(maxn, 0);
vector<int> primearr(maxn,0);
void eula_prim(int n)
{int cnt = 0;for (int i = 2; i <= n; ++i){if (!vis[i]){prime[++cnt] = i;primearr[i] = 1;}for (int j = 1; j <= cnt && i * prime[j] <= n; ++j){vis[i * prime[j]] = 1;if (!(i % prime[j]))break;}}
}
int main()
{int n,t;scanf("%d", &t);eula_prim(maxn);for (int k = 0; k < t; ++k){scanf("%d", &n);ll ans = 0;for (int i = 3; i <= n; ++i){if(primearr[i])ans += i * 2;elseans += i;}printf("%lld\n", ans);}return 0;
}

1008原题链接

思路:

求一个最大面积的满足每列非递减的矩阵。
转化为01矩阵 每个位置1代表该位是否比上面一位小,然后用悬线法求最大01矩阵即可 复杂度O(n^2)
完整代码:

#define _CRT_SECURE_NO_WARNINGS
#include<iostream>
#include<algorithm>
using namespace std;
const int N = 2e3 + 10;int arr[N][N];
int val[N][N];
int L[N][N];
int R[N][N];int main()
{int t;scanf("%d", &t);while (t--) {int n;int m;scanf("%d%d", &n, &m);for (int i = 1; i <= n; i++) for (int j = 1; j <= m; j++) {scanf("%d", &arr[i][j]);val[i][j] = 1;if (arr[i][j] >= arr[i - 1][j]) val[i][j] = val[i - 1][j] + 1;L[i][j] = R[i][j] = j;}for (int i = 2; i <= n; i++) for (int j = 1; j <= m; j++) while (L[i][j] > 1 && val[i][j] <= val[i][L[i][j] - 1]) L[i][j] = L[i][L[i][j] - 1];//L[i][j]向左可以到的地方for (int i = 2; i <= n; i++) for (int j = m; j; j--) while (R[i][j] < m && val[i][j] <= val[i][R[i][j] + 1]) R[i][j] = R[i][R[i][j] + 1];int ans = m;for (int i = 1; i <= n; i++) for (int j = 1; j <= m; j++) ans = max(ans, val[i][j] * (R[i][j] - L[i][j] + 1));printf("%d\n", ans);}return 0;
}

2021杭电多校补题(1)相关推荐

  1. 2021杭电多校补题——第一场

    2021杭电多校补题--第一场 文章目录 Mod, Or and Everything Rocket land(待补) Puzzle loop(待补) Another thief in a Shop( ...

  2. 2021杭电多校补题(9)

    1. Integers Have Friends 2.0 传送门 题意: 给出一个长度为nnn 的数组,选出一个最长的子序列,存在一个 m≥2m \geq 2m≥2 使得 ak1%m=ak2%m=ak ...

  3. 2021杭电多校补题(6)

    1001题目链接 题意:给定数x,求包含x的区间和为素数的最小区间长度 分析: 显然 r > 0,r ≥ l,如果 l ≤ 0,此时 [l,r] 区间和 = [−l + 1,r] 的区间和,且 ...

  4. 2021杭电多校补题(3)

    1009题目链接 设 fijkf_{ijk}fijk​ 表示从 (1,1) 走到 (i,j),一路上收集了 k 个钻石时,钻石的单价最高能涨到多少,则 ans = max(k × f n,n,k ). ...

  5. 2021杭电多校补题(4)

    1008题目链接 题意:给定一张n*m的方格,起点在左上角,只能向下或向右走,地图中有k个地雷,人不能走到地雷上,问可能到达的点有多少. 我们考虑行的转移,在这一行上初始不可达点是输入中的点,对于这样 ...

  6. 2021杭电多校补题(5)

    传送门 1. Array 题意: 给出一个长度为 nnn 的数组,求其有多少个区间满足其众数个数大于区间长度的一半. 题解: 考虑分治. 对于一个区间(l,r)(l,r)(l,r),其中点为 midm ...

  7. 2021杭电多校补题(2)

    1. I love max and multiply 题意: 给出两个数组aaa和bbb ,定义ccc数组 ck=max(ai⋅bj)c_k =max(a_i \cdot b_j)ck​=max(ai ...

  8. 2021杭电多校第八场补题

    比赛传送门:Contest Problem List (hdu.edu.cn) 1006)GCD Game 题目翻译:爱丽丝和鲍勃正在玩游戏. 他们轮流操作.有n个数字,a1,a2,...,an.每次 ...

  9. 【2021杭电多校赛】2021“MINIEYE杯”中国大学生算法设计超级联赛(10)签到题2题

    Solved Pro.ID Title Ratio(Accepted / Submitted) 1001 Pty loves sequence 25.00%(52/208) 1002 Pty with ...

最新文章

  1. c语言求跳水运动员成绩,跳水排名_C语言编程实例_C语言_最全面的网站教程
  2. 数据结构之二叉搜索树(BST)
  3. 动态加载DLL(C#)
  4. Batch Normalization导读
  5. JavaScript-严格检查模式
  6. IDEA、pycharm白嫖攻略
  7. 记住影响客户购买的3个决策关键
  8. jquery修改服务器json,在没有JQuery的情况下将JSON发送到服务器并获取JSON作为回报...
  9. 【Esri联邦大会】看点13: “NOAA National Hurricane Center”:应急应用
  10. 深度学习 机器学习 花书免费下载《Deep Learning》
  11. IAR8.3.2破解说明
  12. TCP/IP常见协议及协议号及端口号
  13. 粉刷匠计算机音乐,音乐《粉刷匠》
  14. 金彩教育:拼多多运营的方法有哪些
  15. gym101431D(传说中的构造(呸))
  16. 用Java开发50个棋类游戏
  17. php处理证件照_如何使用ps制作证件照
  18. 一文梳理 | 电力企业网络安全管理及等级保护工作重点
  19. 棋牌游戏开发会low吗 中国棋牌文化底蕴探究
  20. (九)JMH的详细使用,以及压测dubbo

热门文章

  1. 阅读别人的代码,是一种怎样的体验
  2. 开发小技巧【开发者工具】
  3. 联想拯救者14实现快捷键调屏幕亮度
  4. Spring源码之The IoC container官方文档翻译
  5. java比poi好用的工具五金零配件_好用不一定很贵---平价实用工具介绍
  6. [深度学习][数据集][目标检测]工程车辆数据集16881张15种类别车辆介绍
  7. 【ESP 保姆级教程】疯狂传感器篇 —— 案例:ESP32 + MQ3酒精传感器 + webserver(局域网内曲线变化图)
  8. 潍坊科技学院五专部计算机应用基础试题,计算机应用基础考试试题B
  9. teleport助手不可以使用剪切板的问题解决
  10. Impala命令行操作