zoukankan      html  css  js  c++  java
  • Stacks of Flapjacks UVA

    调了好久,orz

    题解:以从大到小的顺序,先把大的翻到最上面,然后再翻回它应该在的位置(即从小到大的排序中的位置),不懂的话拿笔模拟这个过程就明白了。

    注意读入的方法!!!坑了好久

     1 #include<queue>
     2 #include<cstdio>
     3 #include<string>
     4 #include<cstring>
     5 #include<sstream>
     6 #include<iostream>
     7 #include<algorithm>
     8 using namespace std;
     9 
    10 const int maxn=1005;
    11 
    12 int d[maxn],b[maxn];
    13 
    14 int main()
    15 {   string s;
    16     while(getline(cin,s)){
    17         priority_queue<int,vector<int>,less<int> > qmax;
    18         stringstream ss(s);
    19         cout<<s<<endl;
    20         int cnt=0;
    21         while(ss>>d[cnt]) cnt++;
    22         for(int i=0;i<cnt;i++){
    23             b[i]=d[i];
    24             qmax.push(d[i]);
    25         }
    26         sort(b,b+cnt);
    27         
    28         int i,j;
    29         while(qmax.size()){
    30             int tem=qmax.top();
    31             qmax.pop();
    32             
    33             for(i=0;i<cnt;i++) if(d[i]==tem) break;
    34             for(j=0;j<cnt;j++) if(b[j]==tem) break;
    35             if(i==j) continue;
    36             if(i!=0){
    37                 cout<<cnt-i<<" ";
    38                 for(int k=0;k<=i/2;k++) swap(d[k],d[i-k]);
    39             } 
    40             cout<<cnt-j<<" ";
    41             for(int k=0;k<=j/2;k++) swap(d[k],d[j-k]);
    42         }
    43         cout<<"0"<<endl;
    44     }
    45 } 
  • 相关阅读:
    Redis基本数据类型与持久化
    Jpa创建筛选器自动忽略nul值进行搜索
    layui单元格换行
    form多个name相同表单处理
    layui合并单元格
    关于jpa example使用
    mui下拉菜单
    img在div中居中
    高德地图定位api使用
    【剑指offer】20.表示数值的字符串
  • 原文地址:https://www.cnblogs.com/zgglj-com/p/7266844.html
Copyright © 2011-2022 走看看