2021/12/23) 2. 学生[1,2次元探索]が見られる


1.質問
『見える生徒』
先生はN人の学生を一列に並べた.一列に並んだ学生の身長が前から順番に与えられると、先生はプログラムを書いて、一番前の学生の人数を求めます.△前に立っている人より大きいと見えますが、小さいと見えません.
2.解決方法
  • の一番前にいる学生は無条件にしか見えません.したがって,答えを1に初期化する.
  • は前の学生と比較するのではなく、私の前のすべての学生と比較するので、maxを宣言し、arr[0]に初期化しました.
  • ifクエリー条件、現在の値が最大値より大きい場合は++と答えます.次に、最高値を現在の値にリセットします.
  • 3.正解
            <script>
                function solution(arr){         
                    let answer=1, max=arr[0];
                    for(let i=1; i<arr.length; i++){
                        if(arr[i]>max){
                            answer++;
                            max=arr[i];
                        }
                    }
                    return answer;
                }
                let arr=[130, 135, 148, 140, 145, 150, 150, 153];
                console.log(solution(arr));
            </script>
    4.私のコードと比較して称賛する
    最初に作成したコードはすべての人ではなく、一番前の人と比較するだけです.問題は理解していたのですが、空いていました…だから結果が出てきておかしくて、ずっとやっていて、間違ったところを見つけて、修正しました.結局殴られた.はい.これは簡単な問題だ.