博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
P1088-火星人
阅读量:5232 次
发布时间:2019-06-14

本文共 2401 字,大约阅读时间需要 8 分钟。

1 #include 
2 using namespace std; 3 #define _for(i,a,b) for(int i = (a);i < b;i ++) 4 const int maxn = 10009; 5 typedef long long ll; 6 int N,M; 7 int a[maxn]; 8 inline ll read() 9 {10 ll ans = 0;11 char ch = getchar(), last = ' ';12 while(!isdigit(ch)) last = ch, ch = getchar();13 while(isdigit(ch)) ans = (ans << 1) + (ans << 3) + ch - '0', ch = getchar();14 if(last == '-') ans = -ans;15 return ans;16 }17 inline void write(ll x)18 {19 if(x < 0) x = -x, putchar('-');20 if(x >= 10) write(x / 10);21 putchar(x % 10 + '0');22 }23 24 int main()25 {26 N = read(),M = read();27 _for(i,0,N)28 a[i] = read();29 do30 {31 if(M==0)32 break;33 M --;34 }while(next_permutation(a,a+N));35 _for(i,0,N)36 {37 write(a[i]);38 if(i!=N-1)39 printf(" ");40 }41 return 0;42 }

 

1 #include
2 #include
3 #include
4 #define _for(i,a,b) for(int i = (a);i < b;i ++) 5 typedef long long ll; 6 using namespace std; 7 ll a[10003]; 8 ll rnt[10003]; 9 int vis[10003];10 int m,n;11 inline ll read()12 {13 ll ans = 0;14 char ch = getchar(), last = ' ';15 while(!isdigit(ch)) last = ch, ch = getchar();16 while(isdigit(ch)) ans = (ans << 1) + (ans << 3) + ch - '0', ch = getchar();17 if(last == '-') ans = -ans;18 return ans;19 }20 inline void write(ll x)21 {22 if(x < 0) x = -x, putchar('-');23 if(x >= 10) write(x / 10);24 putchar(x % 10 + '0');25 }26 int main()27 {28 n = read(),m = read();29 ll res = 0;30 _for(i,0,n)31 a[i] = read();32 33 _for(i,0,n)34 {35 ll tsum = 0;36 _for(j,0,i+1)37 if(a[j] <= a[i])38 tsum ++;39 rnt[i] = a[i]-tsum;40 }41 rnt[n-1] += m;42 for(int i = n-1;i > 0;i--)43 {44 rnt[i-1] += rnt[i]/(n-i);45 rnt[i] %= n-i;46 }47 48 memset(vis,0,sizeof(vis));49 _for(i,0,n)50 {51 rnt[i] ++;52 int j;53 for(j = 1;j <= n;j ++)54 {55 if(vis[j])56 continue;57 rnt[i] --;58 if(!rnt[i]) 59 break;60 }61 vis[j] = 1;62 printf("%d ",j);63 }64 return 0;65 }

 

转载于:https://www.cnblogs.com/Asurudo/p/11259014.html

你可能感兴趣的文章
java的Array和List相互转换
查看>>
layui父页面执行子页面方法
查看>>
如何破解域管理员密码
查看>>
Windows Server 2008 R2忘记管理员密码后的解决方法
查看>>
IE11兼容IE8的设置
查看>>
windows server 2008 R2 怎么集成USB3.0驱动
查看>>
Foxmail:导入联系人
查看>>
vue:axios二次封装,接口统一存放
查看>>
vue中router与route的区别
查看>>
js 时间对象方法
查看>>
网络请求返回HTTP状态码(404,400,500)
查看>>
Spring的JdbcTemplate、NamedParameterJdbcTemplate、SimpleJdbcTemplate
查看>>
Mac下使用crontab来实现定时任务
查看>>
303. Range Sum Query - Immutable
查看>>
图片加载失败显示默认图片占位符
查看>>
【★】浅谈计算机与随机数
查看>>
《代码阅读方法与实现》阅读笔记一
查看>>
解决 sublime text3 运行python文件无法input的问题
查看>>
javascript面相对象编程,封装与继承
查看>>
Atlas命名空间Sys.Data下控件介绍——DataColumn,DataRow和DataTable
查看>>