一个1到n序列,合理排序逆序对数要求是m,而且字典序要求最小;

这个题,因为数字只能用一次,所以我们可以知道什么位置放什么数逆序对的个数会增加或减少多少;

先求出最多能产生的数量,每次先输出最小的数,用总数减去减少的逆序对数;

如果不够的时候就要用大数排在前面;

vector,记得输出一个删一个;

#include<cstdio>
#include<vector>
#include<cstring>
#include<algorithm>
using namespace std;
typedef long long ll;
ll n,m;
ll now;
vector<ll> v;
int main()
{
scanf("%lld%lld",&n,&m);
for(ll i=;i<=n;i++) v.push_back(i);
ll s=n*(n-)/;
for(int i=n-;i>=;i--)
{
s-=i;
if(m>s)
{
now=m-s;
m=s;
}
else now=;
printf("%lld ",v[now]);
v.erase(v.begin()+now);
}
return ;
}

又是毕业季我什么也不想说

1到n这些数中,找到k个,使他们的GCD最大,输出GCD;

#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
int n,k;
int main()
{
scanf("%d%d",&n,&k);
printf("%d",n/k);
return ;
}

又是毕业季II

这回数字不连续而且k的值是变的;

把所有的数的公约数的数量记一下就好了

#include<cstdio>
#include<cstring>
#include<cmath>
#include<algorithm>
using namespace std;
const int maxn=1e6+;
int n,x;
int c[maxn];
int maxx;
int main()
{
scanf("%d",&n);
for(int i=;i<=n;i++)
{
scanf("%d",&x);
maxx=max(maxx,x);
int m=sqrt(x);
for(int j=;j<=m;j++)
{
if(x%j==)
{
c[j]++;
if(x/j!=j) c[x/j]++;
}
}
}
x=maxx;
for(int i=;i<=n;i++)
{
while(c[x]<i) x--;
printf("%d\n",x);
}
return ;
}

P1338 末日的传说,P1372 P1414 又是毕业季——贪心的更多相关文章

  1. 洛谷P1372 又是毕业季I&&P1414 又是毕业季II[最大公约数]

    P1372 又是毕业季I 题目背景 “叮铃铃铃”,随着高考最后一科结考铃声的敲响,三年青春时光顿时凝固于此刻.毕业的欣喜怎敌那离别的不舍,憧憬着未来仍毋忘逝去的歌.1000多个日夜的欢笑和泪水,全凝聚 ...

  2. 洛谷 P1338 末日的传说 解题报告

    P1338 末日的传说 题目描述 只要是参加jsoi活动的同学一定都听说过Hanoi塔的传说:三根柱子上的金片每天被移动一次,当所有的金片都被移完之后,世界末日也就随之降临了. 在古老东方的幻想乡,人 ...

  3. 洛谷-P1414 又是毕业季II -枚举因子

    P1414 又是毕业季II:https://www.luogu.org/problemnew/show/P1414 题意: 给定一个长度为n的数列.要求输出n个数字,每个数字代表从给定数列中最合理地取 ...

  4. [洛谷P1338] 末日的传说

    洛谷题目链接:末日的传说 题目描述 只要是参加jsoi活动的同学一定都听说过Hanoi塔的传说:三根柱子上的金片每天被移动一次,当所有的金片都被移完之后,世界末日也就随之降临了. 在古老东方的幻想乡, ...

  5. 洛谷P1414 又是毕业季 [数论]

    题目传送门 又是毕业季 题目背景 “叮铃铃铃”,随着高考最后一科结考铃声的敲响,三年青春时光顿时凝固于此刻.毕业的欣喜怎敌那离别的不舍,憧憬着未来仍毋忘逝去的歌.1000多个日夜的欢笑和泪水,全凝聚在 ...

  6. 洛谷 P1338 末日的传说

    题目链接:https://www.luogu.org/problemnew/show/P1338 题目描述 只要是参加jsoi活动的同学一定都听说过Hanoi塔的传说:三根柱子上的金片每天被移动一次, ...

  7. P1338 末日的传说

    题目描述 只要是参加jsoi活动的同学一定都听说过Hanoi塔的传说:三根柱子上的金片每天被移动一次,当所有的金片都被移完之后,世界末日也就随之降临了. 在古老东方的幻想乡,人们都采用一种奇特的方式记 ...

  8. P1338 末日的传说 逆序数对

    题目描述 只要是参加jsoi活动的同学一定都听说过Hanoi塔的传说:三根柱子上的金片每天被移动一次,当所有的金片都被移完之后,世界末日也就随之降临了. 在古老东方的幻想乡,人们都采用一种奇特的方式记 ...

  9. P1338 末日的传说[水题]

    题目描述 只要是参加jsoi活动的同学一定都听说过Hanoi塔的传说:三根柱子上的金片每天被移动一次,当所有的金片都被移完之后,世界末日也就随之降临了. 在古老东方的幻想乡,人们都采用一种奇特的方式记 ...

随机推荐

  1. 常用算法之排序(Java)

    一.常用算法(Java实现) 1.选择排序(初级算法) 原理:有N个数据则外循环就遍历N次并进行N次交换.内循环实现将外循环当前的索引i元素与索引大于i的所有元素进行比较找到最小元素索引,然后外循环进 ...

  2. windows下mysql表名区分大小写

    windows下mysql默认是不区分大小写的,但是linux会区分大小写 如何让windows下mysql区分大小写呢? 修改 my.ini 里面的mysqld部分 #区分大小写 lower_cas ...

  3. javascript 之 Object.defineProperty

    语法: Object.definePropty(obj,prop,descriptor); 参数: obj:要在其上定义属性的属性 prop:要定义或修改的属性的名称 desriptor:将被定义或修 ...

  4. C# 微信消息模板 发送

    项目要用到微信提醒 ,加上调转到小程序页面,或者 指定url 用到  RestSharp.Senparc.Weixin 类库 一开始直接照着微信示例直接post进去 发现一直提示 47001  ,估计 ...

  5. POJ1222、POJ3279、POJ1753--Flip

    POJ1222-EXTENDED LIGHTS OUT POJ3279-Fliptile POJ1753-Flip Game 为什么将着三个题放一起讲呢?因为只要搞明白了其中一点,就可以一次3ac了- ...

  6. JavaScript内置一些方法的实现原理--Object.freeze()、instanceof

    const定义的常量,一般是不能修改的. 比如: const TIME_OUT = 10000; 但是当值为引用类型值时,还是可以操作对象,扩展或修改对象属性.方法等等. 以下演示代码的操作是不会报错 ...

  7. FICO-清帐函数

    转载:https://www.cnblogs.com/caizjian/p/8067071.html https://blog.csdn.net/sapliumeng/article/details/ ...

  8. Android NDK 学习之接受Java传入Object数组

    本博客主要是在Ubuntu 下开发,且默认你已经安装了Eclipse,Android SDK, Android NDK, CDT插件. 在Eclipse中添加配置NDK,路径如下Eclipse-> ...

  9. JMeter测试clickhouse

    使用JMeter对clickhouse连接测试 1.测试计划 jmeter通过JDBC连接数据库需要先引入对应的驱动包,驱动包的版本要与服务器数据库版本一致,我用的驱动版本是:clickhouse-j ...

  10. 【JUC】1.线程

    先复习一下线程的东西: Java线程的内存模型 主内存与工作内存 Java内存模型主要定义了程序中各个变量的访问规则 所有的变量都在主内存,Java堆(线程共享) 每条线程都有自己的工作内存,虚拟机栈 ...