zoukankan      html  css  js  c++  java
  • 九度 1398 移动次数

    http://ac.jobdu.com/problem.php?id=1398

    静下来分析就行了,不过这题的描述有漏洞,说的是两两交换,没有说必需是相邻的两个才能交换啊

    还有,注意最大值最小值不唯一的情况

     1 #include <stdio.h>
    2 int main()
    3 {
    4 int num[202];
    5 int n;
    6 while(scanf("%d",&n)!=EOF){
    7 int i;
    8 int max_num=-1;
    9 int min_num=500;
    10 int max_pos=-1;
    11 int min_pos=-1;
    12 for(i=1;i<=n;i++){
    13 scanf("%d",&num[i]);
    14 if(num[i]>=max_num){
    15 max_num=num[i];
    16 max_pos=i;
    17 }
    18 if(num[i]<min_num){
    19 min_num=num[i];
    20 min_pos=i;
    21 }
    22 }
    23 if(min_pos==1&&max_pos==n){
    24 printf("0\n");
    25 continue;
    26 }
    27 if(min_pos==max_pos){
    28 printf("0\n");
    29 continue;
    30 }
    31 if(min_pos!=1&&max_pos!=n){//如果都不在正确位置上
    32 if(min_pos<max_pos){
    33 printf("%d\n",min_pos-1+n-max_pos);
    34 }else{
    35 printf("%d\n",min_pos-1+n-max_pos-1);
    36 }
    37 }else if(min_pos==1){//如果最小数在正确位置上
    38 printf("%d\n",n-max_pos);
    39 }else if(max_pos==n){//如果最大数在正确位置上
    40 printf("%d\n",min_pos-1);
    41 }
    42 }
    43 }



  • 相关阅读:
    单调递增的数字
    合并K个升序链表
    ISO 8 自适应cell
    动态计算UITableViewCell高度
    APP上传
    多线程 GCD队列组
    多线程 线程之间的通信
    多线程 GCD
    多线程 线程同步问题
    多线程 线程的状态
  • 原文地址:https://www.cnblogs.com/yangce/p/2385830.html
Copyright © 2011-2022 走看看