cari

Rumah  >  Soal Jawab  >  teks badan

php - Pemprosesan rentetan mudah, mencari idea.

$arr = [2,3,4,5,8,10,11,12,13,16,19];

Tukar kepada rentetan

2-5, 8, 10-13, 16, 19

Idea peribadi saya ialah memilih 8 16 19 yang tidak bergantung pada kedua-dua belah pihak, dan kemudian pilih nilai maksimum dan minimum daripada 2 3 4 5.

滿天的星座滿天的星座2807 hari yang lalu411

membalas semua(3)saya akan balas

  • 怪我咯

    怪我咯2017-05-16 13:15:33

    Catat nilai titik permulaan dan imbas ke belakang Jika berterusan, teruskan ke belakang. Jika tidak, catatkan nilai titik akhir dan dapatkan beg-end atau beg. teruskan...

    balas
    0
  • 淡淡烟草味

    淡淡烟草味2017-05-16 13:15:33

    $arr=array(2,3,4,5,8,10,11,12,13,16,19);
    //最大值
    $max=max($arr);
    //求和
    $sun=array_sum($arr);
    //排序
    asort($arr);
    //a1为标准数组,用来判断值是否存在
    //a2用来存放已经被使用过的数
    //a3为最后的结果数组
    foreach ($arr as $key => $value) {
        
         $a1[$value]=$value;
    }
    
    foreach ($arr as $key => $value) {
         if(!isset($a2[$value])){
                 $start=$value;
                 $end=$value;
            
                 $a2[$value]=$value;
                 for($i=0;$i<$sun;$i++){
                
                                $end = $end+1;
                                if(isset($a1["$end"])){
                    
                                    $a2[$end]=$end;
                
                                }else{
                                    $end =$end-1;
                                    if($start==$end){
                                      $a3 []= $start;
                                    }else{
                                      $a3 []=   $start."-".$end;
                                    }
                                    
                                   //断开了,跳出循环
                                    break;
                                }
                
                
                   }
           }
    }
    
    echo '<pre>';
    var_dump($a3);
    
    die;
    

    balas
    0
  • 伊谢尔伦

    伊谢尔伦2017-05-16 13:15:33

    Pahasi tatasusunan kepada 5 bahagian, dan kemudian proseskan tatasusunan itu.

    balas
    0
  • Batalbalas