题目传送门:https://www.nowcoder.com/acm/contest/144/J

题意:给一个function,构造n个数,求出其中任意两个的lcm的最大值。

分析:要求最大的lcm,大概分析一下,差不多就在里面的最大的k个里,k^2求出答案。

因为n(1e7),sort会tle,需要一个效率更低的排序来求出前k大。

 #include<bits/stdc++.h>
using namespace std;
const int maxn=1e7+;
typedef unsigned ui;
typedef unsigned long long ull;
ui x,y,z;
ui A,B,C;
ui a[maxn],b[maxn];
int n;
ui tang(){
ui t;
x^=x<<;
x^=x>>;
x^=x<<;
t=x;x=y;y=z;z=t^x^y;
return z;
}
ull gcd(ull x,ull y){
if (y==) return x;
else return gcd(y,x%y);
}
void _sort(int k,int l,int r){
ui kk=a[(l+r)/];
int i=l,j=r;
while (i<j){
while (a[j]>kk) j--;
while (a[i]<kk) i++;
if (i<=j){
swap(a[i],a[j]);
i++;j--;
}
}
if (r-i+==k) return ;
else if (r-i+>k) _sort(k,i+,r);
else _sort(k-(r-i+),l,i-);
}
int main(){
ios::sync_with_stdio(false);
cin.tie();cout.tie();
int t;
cin >> t;
for (int id=;id<=t;id++){
cin >> n >> A >> B >> C;
x=A;y=B;z=C;
for (int i=;i<n;i++){
a[i]=tang();
}
ull ans=;
int k=min(n,);
_sort(k,,n-);
int cnt=;
for (int i=n-;i>=n-k;i--)
b[cnt++]=a[i];
for (int i=;i<cnt;i++){
for (int j=i+;j<cnt;j++){
ull _gcd;
if (b[i]>b[j]) _gcd=gcd(b[i],b[j]);
else _gcd=gcd(b[j],b[i]);
ans=max(ans,b[i]/_gcd*b[j]);
}
}
cout << "Case #" << id << ": " << ans << endl;
}
return ;
}

牛客第六场 J.Heritage of skywalkert(On求前k大)的更多相关文章

  1. 牛客多校第六场 J Heritage of skywalkert 随即互质概率 nth_element(求最大多少项模板)

    链接:https://www.nowcoder.com/acm/contest/144/J来源:牛客网 skywalkert, the new legend of Beihang University ...

  2. 牛客2018多校第六场 J Heritage of skywalkert - nth_element

    传送门 题意:提供一个随机生成函数,让你生成n个数,然后问你其中能找到的两个数的最小公倍数 最大 是多少. 思路:可以用nth_element()函数在O(n)下求出前 15 个大的数(当然,100个 ...

  3. HDU 6041 I Curse Myself(点双联通加集合合并求前K大) 2017多校第一场

    题意: 给出一个仙人掌图,然后求他的前K小生成树. 思路: 先给出官方题解 由于图是一个仙人掌,所以显然对于图上的每一个环都需要从环上取出一条边删掉.所以问题就变为有 M 个集合,每个集合里面都有一堆 ...

  4. (第六场)Heritage of skywalkert 【玄学】

    题目链接:https://www.nowcoder.com/acm/contest/144/J 标题:J.Heritage of skywalkert | 时间限制:1 秒 | 内存限制:256M s ...

  5. 牛客第三场 J LRU management

    起初看到这道题的时候,草草就放过去了,开了另一道题,结果开题不顺利,总是感觉差一点就可以做出来,以至于一直到最后都没能看这道题qaq 题意:类似于操作系统上讲的LRU算法,有两个操作,0操作代表访问其 ...

  6. 牛客竞赛第二场D Kth Minimum Clique 贪心+bitmap

    Kth Minimum Clique 题意 给出n(n<100)个点的邻接表,和n个点的权值,求第k大的团(完全子图) 分析 n很小,并且好像没有什么算法和这个有关系,所以可以往暴力枚举的方向想 ...

  7. 牛客第五场多校 J plan 思维

    链接:https://www.nowcoder.com/acm/contest/143/J来源:牛客网 There are n students going to travel. And hotel ...

  8. 牛客网第二场Jfarm(随机化+二维前缀和)

    链接:https://www.nowcoder.com/acm/contest/140/J 来源:牛客网 White Rabbit has a rectangular farmland of n*m. ...

  9. 牛客网第一场E题 Removal

    链接:https://www.nowcoder.com/acm/contest/139/E 来源:牛客网 Bobo has a sequence of integers s1, s2, ..., sn ...

随机推荐

  1. On Line Tools

    1)在线生成证书请求 https://www.icewarp.com/support/online_help/3206.htm 2)在线文件共享 https://reep.io/ https://sn ...

  2. BZOJ2424 [HAOI2010]订货 - 费用流

    题解 (非常裸的费用流 题意有一点表明不清: 该月卖出的商品可以不用算进仓库里面. 然后套上费用流模板 代码 #include<cstring> #include<queue> ...

  3. boost 学习(1)

    智能指针的学习 中文教程网站 http://zh.highscore.de/cpp/boost/ 不过代码可能 由于BOOST 版本不同需要稍作修改 scoped_ptr 离开作用域则自动调用类析构函 ...

  4. Warning: Attempt to present A on B whose view is not in the window hierarchy!

    昨天写豆瓣发广播Demo的时候,为了写Demo的简单,就使用了Storyboard,结果执行视图跳转时遇到了这个问题: Warning: Attempt to present <UINaviga ...

  5. Spark实践 -- 夜出顾客服务分析

    原文链接:https://www.cnblogs.com/stillcoolme/p/10160397.html 1 业务需求 最近做的24小时书店大数据平台中的一个需求:获取一段时间内只在晚上进店, ...

  6. 2018.09.09 codeforces280C. Game on Tree(期望dp)

    传送门 期望dp经典题. 显然只需要算出每个点被染黑的期望步数. 点i被染黑的期望是1/(1到i这条链上的节点数)" role="presentation" style= ...

  7. 微信post xml 消息编码问题

    site:mp.weixin.qq.com utf 微信卡券接口说明 - 微信公众平台开发者文档 所有API接口POST的数据只支持utf8编码,否则会返回报错. 以上是获取的部分信息 这个尽管有点模 ...

  8. html5获取经纬度

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  9. CentOS 7 x64部署tomcat

    1.jdk1.7 官网地址:jdk下载地址  下载地址:jdk下载地址 2.tomcat 没啥可说,wget 去下载 3.开放端口 firewall-cmd --zone=/tcp --permane ...

  10. notepad++换行替换