解释一下样例,因为我觉得这个题意表述的不是很清楚。以第二组样例为例。

牌序为:3 1 4 5 2

第一轮:把 3 放到末尾:1 4 5 2 3,最顶上的牌是1,把1拿走。剩余 4 5 2 3

第二轮:1.把4放到末尾:5 2 3 4

2.把5放到末尾:2 3 4 5

最顶上的牌是2,把 2 拿走,剩余:3 4 5

第三轮:1.把3放到末尾:4 5 3

2.把4放到末尾:5 3 4

3.把5放到末尾:3 4 5

最顶上的牌是3,把 3 拿走,剩余:4 5

第四轮:1.把4放到末尾:5 4

2.把5放到末尾:4 5

3.把4放到末尾:5 4

4.把5放到末尾:4 5

最顶山的牌是4,把 4 拿走,剩余5

第五轮:5次把5放到末尾的操作,把 5 拿走。操作结束。

方法:仍然以第二组样例为例,

一开始是5个空位:-----

1.从第1个位置开始,数 1 个空格: -1---

2.从放1的位置开始,数 2 个空格:-1--2

3.从放2的位置开始,数 3 个空格:31--2 (若后面没有位置,再从第一个位置开始)

4.从放3的位置开始,数 4 个空格:314-2

5.从放5的位置开始,数 5 个空格:31452

即每次超过最后一个位置时,再返回头一个位置。在每次要放的牌 i 之前数 i 个空格就行。

 #include <cstdio>
#include <cstring>
#include <cstdlib> const int MAXN = ; int n;
int ans[MAXN]; int main()
{
int T;
scanf( "%d", &T );
while ( T-- )
{
scanf( "%d", &n );
int cur = ;
int pos = ;
memset( ans, -, sizeof(ans) );
while ( cur <= n )
{
int i, cnt;
int left = n - ( cur - ); //剩余空格的个数
left = cur % left + ; //一定要取模!!!不然会超时
for ( i = pos, cnt = ; ; ++i )
{
if ( i > n ) i = ;
if ( ans[i] == - ) ++cnt;
if ( cnt == left ) break;
}
ans[i] = cur;
pos = i;
++cur;
} for ( int i = ; i <= n; ++i )
{
if ( i != ) putchar(' ');
printf( "%d", ans[i] );
}
puts("");
}
return ;
}

SPOJ 1108 Card Trick 暴力模拟的更多相关文章

  1. POJ 2200 A Card Trick(模拟)

    题目链接 题意 : 一共52张牌(A, 2, 3, 4, 5, 6, 7, 8, 9, 10, J, Q, K)花色分别是C,D,H,S ...给助理5张牌,然后助理需要重新排一下次序,把第一张牌给观 ...

  2. UESTC 890 Card Trick(DP 纸牌魔术)

    题意  给你一些牌  所有正面朝下放桌子上   你选一个起点    翻开那张牌   牌上的数字是几就向前走几步   J,Q,K 都是向前走10步  A向前走11步   知道向前走相应的步数后超过了终点 ...

  3. bnuoj 20832 Calculating Yuan Fen(暴力模拟)

    http://www.bnuoj.com/bnuoj/problem_show.php?pid=20832 [题意]: 给你一串字符串,求一个ST(0<ST<=10000),对字符串中字符 ...

  4. POJ 1013 小水题 暴力模拟

    Counterfeit Dollar Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 35774   Accepted: 11 ...

  5. hdu_1006 Tick and Tick(暴力模拟)

    hdu1006 标签(空格分隔): 暴力枚举 好久没有打题了,退队了有好几个月了,从心底不依赖那个人了,原来以为的爱情戏原来都只是我的独角戏.之前的我有时候好希望有个人出现,告诉自己去哪里,做什么,哪 ...

  6. ny714 Card Trick

    Card Trick 时间限制:1000 ms  |  内存限制:65535 KB 难度:3 描述 The magician shuffles a small pack of cards, holds ...

  7. hihoCoder #1871 : Heshen's Account Book-字符串暴力模拟 自闭(getline()函数) (ACM-ICPC Asia Beijing Regional Contest 2018 Reproduction B) 2018 ICPC 北京区域赛现场赛B

    P2 : Heshen's Account Book Time Limit:1000ms Case Time Limit:1000ms Memory Limit:512MB Description H ...

  8. 美团2018年CodeM大赛-资格赛 分数 暴力模拟

    链接:https://www.nowcoder.com/acm/contest/138/D来源:牛客网 小胖参加了人生中最重要的比赛——MedoC资格赛.MedoC的资格赛由m轮构成,使用常见的“加权 ...

  9. 2018/7/31-zznu-oj-问题 B: N! 普拉斯 -【求大数的阶乘-ll存不下-然后取尾零的个数输出-暴力模拟】

    问题 B: N! 普拉斯 时间限制: 1 Sec  内存限制: 128 MB提交: 114  解决: 35[提交] [状态] [讨论版] [命题人:admin] 题目描述 在处理阶乘时也需要借助计算器 ...

随机推荐

  1. MySQL 从库日志比主库多

    在群里聊天的时候,一个群友说,生产库主库宕机,但是主从数据库数据一致,但是从库的日志比主库多,很是不理解! 咨询后发现,生产库的主库没有设置sync_binlog=1,而是为sync_binlog=0 ...

  2. 加载驱动模块时Device or resource busy的解决方法

    加载驱动模块时Device or resource busy的解决方法 加载驱动模块时Device or resource busy的解决方法 insmod或modprobe驱动模块时Device o ...

  3. [转]adb pull Permission denied及no such file错误

    adb pull  Permission denied及no such file错误 http://www.the8m.com/blog/article/javadk/adbpull.html XP系 ...

  4. Java中如何防止内存泄漏的发生

    在Java开发中我们常常会遇到内存泄漏的情况发生.那么为什么会发生内存泄漏,以及怎样去防止! 内存泄漏的定义:对象已经没有被应用程序使用,但是垃圾回收器没办法移除它们,因为还在被引用着. 为什么会发生 ...

  5. 微软职位内部推荐-Senior SDE for Big Data

    微软近期Open的职位: Title: Senior SDE The Big Data Tooling team looking for a talented and passionate devel ...

  6. 不同的source control下配置DiffMerge

    TFS: 1. 打开Option -> Source Control -> Visual Studio TFS -> Configure User Tools; 2. 添加 .*, ...

  7. 开启VMware Esxi的SSH远程登录

    1.在服务器的配置页面中开启 按[F2],输入密码,进入配置页面,选择troubleshooting options,选择EnableSSH 即可. 2.在VMware Client中开启 进入:配置 ...

  8. 求出1~13的整数中1出现的次数,并算出100~1300的整数中1出现的次数?为此他特别数了一下1~13中包含1的数字有1、10、11、12、13因此共出现6次,但是对于后面问题他就没辙了。ACMer希望你们帮帮他,并把问题更加普遍化,可以很快的求出任意非负整数区间中1出现的次数。

    // test20.cpp : 定义控制台应用程序的入口点. // include "stdafx.h" include include include include inclu ...

  9. 设计模式之单实例模式(Singleton)

    原理:将类的构造函数由pubic变为private或者protect,添加获取对象的public 成员函数,返回指向对象的静态指针. 首先来一段简单的代码实现 代码一 class Singleton ...

  10. 【HDOJ】【3037】Saving Beans

    排列组合 啊……这题是要求c(n-1,0)+c(n,1)+c(n+1,2)+......+c(n+m-1,m) 这个玩意……其实就等于c(n+m,m) 好吧然后就是模P……Lucas大法好= = 我S ...