2017多校赛6 Inversion hdu 6098
来源:互联网 发布:免费网络兼职 编辑:程序博客网 时间:2024/06/06 00:24
直达飞机
题目意思:求B数组(B[0]除外), 每个B[i]是所有A[j](i不能整除j)中的最大值, 就是剔除下标是i的倍数的数啦。
思路:要什么就找什么的方式硬干是很难受的, 思路转一下。既然是求最大值, 那么就看最大值是谁的菜了不是?假设最大值下标为j, 则只要最大值下标j不是i的倍数,就可以确定B[i]=A[j]。详细内容见代码和注释
#include <cstring>#include <cstdio>#include <iostream>#include <string>#include <climits>#include <vector>#include <map>#include <algorithm>#include <cmath>#include <queue>using namespace std;typedef long long LL;#define MAXN_NUM 0x3f3f3f3f#define EPS 1e-6#define DGA(x)#define DFA(x)#define PRT(x,a) printf("%s%d%s\n",a,x,a)#define TEST(x) printf("---------test %c---------\n",x+'A')#define Fin(i,f,t) for(int i=f;i<=t;++i)#define Fde(i,f,t) for(int i=f;i>=t;--i)#define SfI(x) scanf("%d",&x)#define SfLL(x) scanf("%lld",&x)#define SfD(x) scanf("%lf",&x)#define SfC(x) scanf("%c",&x)#define SfS(x) scanf("%s",x)#define MAXN 6struct node{ int v,p;//值和下标 node(){} node(int v, int p):v(v), p(p){} bool operator<(const node& a) const{ if(v!=a.v) return v<a.v; return p<a.p; }}nd;priority_queue<node> que;const int maxn=1e5+100;int ans[maxn];int main(void){ DFA(freopen("D:\\test.txt","r",stdin)); //freopen("D:\\tsst.txt","w",stdout); int T, n; for (scanf("%d", &T); T; T--){ scanf("%d", &n); while (!que.empty()) que.pop(); for (int i=1; i<=n; i++){ scanf("%d", &nd.v);nd.p=i; que.push(nd); } int num=0;//记录下得到结果的个数 for (int i=0; i<=n; i++) ans[i]=-1;//标记下,防止次优解覆盖最优解 while(!que.empty()){ nd=que.top(); que.pop(); for (int i=n; i>0; i--){ if (nd.p%i==0) continue; if(ans[i]==-1){ ans[i]=nd.v; num++; } } if(num==n-1){ break; } } for (int i=2; i<=n; i++){ if (i!=2)putchar(' '); printf("%d", ans[i]); } putchar('\n'); } return 0;}
很久没写了,这算比较水的题,找找存在感?权当如此吧。。
阅读全文
0 0
- 2017多校赛6 Inversion hdu 6098
- HDU 6098-Inversion
- HDU 6098-Inversion
- hdu 6098 Inversion
- HDU 6098 Inversion
- hdu-6098-Inversion
- HDU 6098 Inversion
- HDU 6098 Inversion【思维】
- HDU 6098 Inversion(RMQ)
- HDU 6098 Inversion【】
- #HDU 6098 Inversion
- HDU 6098 Inversion
- HDU 6098 Inversion
- hdu -- 6098 -- Inversion(排序)
- 2017杭电多校第六场 1003 Inversion(暴力)HDU 6098
- 2017 多校训练第六场 HDU 6098 Inversion
- HDU-2017 多校训练赛6-1003-Inversion
- HDU-Inversion
- Codeforces Gym 101246J Buoys
- 快速幂模版
- POJ 3259Wormholes
- 数据库查询总结
- SpringMVC第四篇【参数绑定详讲、默认支持参数类型、自定义参数绑定、RequestParam注解】
- 2017多校赛6 Inversion hdu 6098
- 爬虫初探:把豆瓣读书主页上书的URL、书名、作者、出版时间、出版社全部爬下来
- 1040. 有几个PAT(25)
- spring mvc基础篇(八):映射处理器之FreeMarker模板技术
- Nginx和apache区别
- 阿里巴巴前端第一轮面试问题,你会被刷掉吗?
- 淘宝Tair分布式缓存数据库系统总体结构
- window.open 6种弹窗方式
- javascript事件