hd 1988 Flipping Burned Pancakes

2024-01-14 05:59
文章标签 hd 1988 flipping burned pancakes

本文主要是介绍hd 1988 Flipping Burned Pancakes,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

做练习赛时,没来的及看.后来看的时候发现可以用bfs+递归求解,写好后TLE,后来又改成了dfs,一样TLE.后来又问了WY,直接构造就可以了,方法是先排大的,再排小的.
/*
方法:直接构造,先排大的,再排小的...
*/

#include 
< iostream >
#include 
< queue >
using   namespace  std;
int  a[ 32 ], n;
void  change( int  t)
{
    
int i;
    
for (i=1; i<=t; ++i)
    
{
        a[i] 
*= -1;
    }

    
for (i=1; i<=t/2++i)
    
{
        
int tt = a[i];
        a[i] 
= a[t-i+1];
        a[t
-i+1= tt;
    }

}

int  main()
{
    
int i, j, index = 1;
    
int N;
    
char c;
    queue
<int> mq;
    scanf(
"%d"&N);
    
while (N--)
    
{
        scanf(
"%d"&n);
        
for (i=1; i<=n; ++i)
        
{
            scanf(
" %c%d"&c, &a[i]);
            
if(c == '-')
                a[i] 
*= -1;
        }
    
        
for (i=n; i>=1--i)
        
{
            
if(a[i] != i)
            
{
                
while (1)
                
{
                    
for (j=1; j<=n; ++j)
                    
{
                        
if(abs(a[j]) == i)
                            
break;
                    }

                    
if(j==1 && a[j]==-i)
                    
{
                        change(i);
                        mq.push(i);
                        
break;
                    }

                    
else
                    
{
                        change(j);
                        mq.push(j);
                    }

                }

            }

        }

        printf(
"%d %d", index++, mq.size());
        
while (!mq.empty())
        
{
            printf(
" %d", mq.front());
            mq.pop();
        }

        printf(
" ");
    }

    
return 0;
}
 

这篇关于hd 1988 Flipping Burned Pancakes的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/604151

相关文章

Linux block_device gendisk和hd_struct到底是个啥关系

本文的源码版本是Linux 5.15版本,有图有真相: 1.先从块设备驱动说起 安卓平台有一个非常典型和重要的块设备驱动:zram,我们来看一下zram这个块设备驱动加载初始化和swapon的逻辑,完整梳理完这个逻辑将对Linux块设备驱动模型有深入的理解。 zram驱动加载的时候会调用zram_add函数,源码如下: 1887/*1888 * Allocate and initia

RTX3060Ti + Intel Wi-fi 6 AX201 + 512G SSD 2T HD 台式机 双系统 Ubuntu 16.04 安装 + Qt catkin cmake 开发环境部署

目录 Ubuntu 16.04系统安装: RTX3060Ti显卡驱动安装: 其他软件环境的安装: 无线网卡驱动安装: 升级内核: Qt 的安装 catkin安装: CMake安装: Git安装: SVN安装: 搜狗输入法的安装: Ubuntu 16.04系统安装: Ubuntu 16.04系统盘制作就先不多说了,后续有时间的时候再详细补充 具体可参考:Ubunt

HD 1018BIG NUMBER

题目要求很简单  就是计算n!结果的数字位数  没什么思路 说是有个公示 借鉴自http://blog.csdn.net/nikekkaa/article/details/5641130   有公式超级简单。 强烈要记住一样事情,计算某个数的位数的时候可以用到 log10(n)。 这题暂时就放出找到的公式吧: 公式1: log10(n!)=log10(1*2*3…*n)=log10

POJ 1988 Cube Stacking (带权并查集)

题目链接:Cube Stacking num数组表示集合个数,under表示比他小的个数即可 代码: #include <stdio.h>#include <string.h>const int N = 30005;int p, a, b, parent[N], under[N], num[N];char q[2];void init() {for (int i = 1; i <

论文阅读:Correcting Motion Distortion for LIDAR HD-Map Localization

目录 概要 Motivation 整体架构流程 技术细节 小结 论文地址:http://arxiv.org/pdf/2308.13694.pdf 代码地址:https://github.com/mcdermatt/VICET 概要 激光雷达的畸变矫正是一个非常重要的工作。由于扫描式激光雷达传感器需要有限的时间来创建点云,所以一次扫描过程中传感器的运动会导致点云发生畸变,这种现

**Leetcode 861. Score After Flipping Matrix

先写的状压,因为数据说只有<=20 然后挂了。。 贪心 class Solution {public:int matrixScore(vector<vector<int>>& A) {if (!A.size() || !A[0].size()) return 0;for (int i = 0; i < A.size(); i++) {if (!A[i][0]) {for (int j = 0

经典效果器插件包 – McDSP HD Everything 5.1.1 macOS

McDSP HD Everything 5.1.1 macOS | 1.2GB 只支持AU格式,6020、AE和3个SPC共五个插件不起作用 对于需要一切的人,McDSP Everything Pack是一张票。McDSP的所有均衡器,压缩器,虚拟磁带机,多频带动态处理器,混响,去噪器,噪声滤波器和“ futz”工具。包括来自Emerald Pack和Retro Pack的插件。 Ev

杭电acm1171.Big Event in HD

/*************************************************************************************************************************** 题目大意:不可以用num1个1,num2个2,num3个5组合得到的最小数; 题目解析:求(1+x^eum[0]+.....+x^(num1*eum[

gentoo on macbook pro driver for the Broadcom Facetime HD webcam

gentoo on macbook pro 按 gentoo wiki 配置kernel 选项后, 仍然不能使用摄像头Device Drivers ---> <M> Multimedia support --->[*] Cameras/video grabbers support[*] Media USB Adapters ---><M> USB Video Class (U

3.2 HD-GR基带模块介绍

\qquad HD-GR接收机的基带模块是在Namuru跟踪模块的Verilog版代码基础上开发的,开发工具使用了Altera的Quartus II v11.0软件包。HD-GR基带模块继承和扩展了Namuru跟踪模块的架构和接口,增加了BDS系统和双系统以及1PPS时标支持功能。 3.2.1 总体描述 \qquad AGRS_GP_1参考工程中的GNSS基带模块支持GPS和BDS双系统,