Educational Codeforces Round 9 Longest Subsequence 思维+筛法
来源:互联网 发布:c语言贪吃蛇程序设计 编辑:程序博客网 时间:2024/06/06 12:57
题目链接
题意:
找到最长的最大公约数最小的数并输出
思路:
因为m就1e6,所以数组的范围没用超过1e6的我们全部不考虑,关于求LCM,我们先记录每个数出现的次数,然后我们可以用一个类似于素数筛选法,复杂度为nlogn的 去记录找到对应的LCM中在数组中因子最多的是哪个,然后输出即可
#include<bits/stdc++.h> using namespace std; const int maxn = 1e6+5; int cnt[maxn]; int dp[maxn]; int a[maxn]; int main() { int n,m; scanf("%d%d",&n,&m); for(int i=1;i<=n;i++) { scanf("%d",&a[i]); if(a[i]<=m)cnt[a[i]]++; } long long ans1=-1,ans2=-1; for(int i=1;i<=m;i++) { for(int j=i;j<=m;j+=i) { dp[j]+=cnt[i]; }if(dp[i]>ans1) ans1=dp[i],ans2=i; } cout<<ans2<<" "<<ans1<<endl; for(int i=1;i<=n;i++) if(ans2%a[i]==0) cout<<i<<" "; cout<<endl; }
阅读全文
0 0
- Educational Codeforces Round 9 Longest Subsequence 思维+筛法
- Educational Codeforces Round 9(D. Longest Subsequence(筛法))
- (Educational Codeforces Round 9)Longest Subsequence(dp)
- Educational Codeforces Round 9-D. Longest Subsequence(筛选法)
- Educational Codeforces Round 9 D. Longest Subsequence CF632D
- Educational Codeforces Round 9 C. The Smallest String Concatenation【思维】
- Educational Codeforces Round 9
- Educational Codeforces Round 9
- Educational Codeforces Round 9
- Educational Codeforces Round 9
- Educational Codeforces Round 28 Random Query 思维
- codeforces Educational Codeforces Round 32 E. Maximum Subsequence
- Educational Codeforces Round 9 总结
- Educational Codeforces Round 5 D Longest k-Good Segment 贪心
- Educational Codeforces Round 5 D. Longest k-Good Segment
- Educational Codeforces Round 5 (D. Longest k-Good Segment)
- Educational Codeforces Round 5 D. Longest k-Good Segment
- Educational Codeforces Round 5 D. Longest k-Good Segment
- SpringMVCJSR-303规范进行校验简单示例
- linux下忘记mysql密码
- 面向对象与原型三
- 淘淘商城第十二天
- JavaPoet
- Educational Codeforces Round 9 Longest Subsequence 思维+筛法
- 淘淘商城第十三天
- POJ
- mysql数据库从A表查询数据插入到B表中
- Python调试代码的4种方法:print、log、pdb、PyCharm的debug
- 面向对象与原型重难点
- 事件委托与点击事件绑定
- Adjective
- 设计模式-工厂模式 抽象工厂模式 简单工厂模式学习笔记