首页 > 其他分享 >[2004年NOIP普及组] 火星人

[2004年NOIP普及组] 火星人

时间:2022-08-23 21:14:24浏览次数:53  
标签:排列 NOIP int next 火星人 2004 permutation

next_permutation函数将按字母表顺序生成给定序列的下一个较大的排列,直到整个序列为降序为止。prev_permutation函数与之相反,是生成给定序列的上一个较小的排列。

这是一个求一个排序的下一个排列的函数,可以遍历全排列,要包含头文件<algorithm>

使用方法:next_permutation(数组头地址,数组尾地址);若下一个排列存在,则返回真,如果不存在则返回假若求上一个排列,则用prev_permutation。

 

[2004年NOIP普及组] 火星人

思路:将外星人所表示的数转化成人类的数字,再+m后,转化成外星人手指排列的顺序。

代码如下:

#include<bits/stdc++.h>

using namespace std;

int a[10005];

int main()

{

      int n,m;

      cin>>n>>m;

      for(int i=0;i<n;i++)

         cin>>a[i];

      //12345 编号1 m=3-->12453

      //213   编号3 m=2-->312

      for(int i=1;i<=m;i++)

         next_permutation(a,a+n);//排列

      for(int i=0;i<n;i++)

         cout<<a[i]<<" ";

      return 0;

 }

标签:排列,NOIP,int,next,火星人,2004,permutation
From: https://www.cnblogs.com/xdzxyingrui/p/16617779.html

相关文章

  • [2004年NOIP普及组] 火星人
    [2004年NOIP普及组]火星人分析:根据题意,要在题中给出的排列组合的基础上,加上m,形成一个新的排列组合。因为全排列是按照从小到大的顺序进行的,所以我们可以转化为全排列问......
  • [NOIP2017 提高组] 奶酪
    题目链接:https://www.luogu.com.cn/problem/P3958试题分析:题目给出了球心坐标与半径,并且给出了奶酪高度,询问我们是否能从奶酪底部到奶酪顶部。我们可以分出以下几种情况:......
  • 雅礼NOIP2018集训 day5
    雅礼NOIP2018集训day5联题面由于出题人懒所以没有背景。一个无限长的01序列,初始全为0,每次选择一个区间[l,r]进行操作,有三种操作:•1lr将[l,r]中所有元素变......
  • NOIP模拟赛 繁星
    NOIP模拟赛繁星题面要过六一了,大川正在绞尽脑汁想送给小伙伴什么礼物呢。突然想起以前拍过一张夜空中的繁星的照片,这张照片已经被处理成黑白的,也就是说,每个像素只可能......
  • NOIP模拟赛 背包
    NOIP模拟赛背包题面NYG有一个神奇的背包,每放进去一个物品,背包的体积就会变大。也就是说,每放进一个物品,背包会被占用一定的体积,但是紧接着背包的总体积又会增大一定的值......
  • 1029 [NOIP2009]最优贸易 路径最小值最大值 spfa
    链接:https://ac.nowcoder.com/acm/contest/26077/1029来源:牛客网题目描述C国有n个大城市和m条道路,每条道路连接这n个城市中的某两个城市。任......
  • [NOIP2002 普及组] 选数
    题目链接:https://www.luogu.com.cn/problem/P1036试题分析:题目要求从n个数中任选k个数相加,求有多少种和为素数的情况。这道题我们运用的主要是深搜,其次还要写一个判断素数......
  • [2002年NOIP普及组] 选数
    一个判断素数的函数另一个函数大体分为:ans=ans+a[n+1];pd(n+1,m+1);ans=ans-a[n+1];//回溯pd(n+1,m);//下一种方案注意:不同组合算不同种#include<bits/stdc++.h>usin......
  • P1850 [NOIP2016 提高组] 换教室 思路简记
    我们令\(f_{i,j,0/1}\)表示前\(i\)个时间点,共申请了\(j\)次,第\(i\)个时间点是否(\(1/0\))进行了申请,\(g_{i,j}\)表示\(i\toj\)的最短路,\(p_i\)表示原题中的......
  • [NOIP2001 提高组] 一元三次方程求解
    题目链接:https://www.luogu.com.cn/problem/P1024试题分析:三个答案都在[-100,100]范围内,两个根的差的绝对值>=1,保证了每一个大小为1的区间里至多有1个解,也就是说当区间......