[今日の珂太練習場]-1138列
2237 ワード
質問する
解法
この問題は比較的多くの問題をかき集めたものだ.与えられた要素を配列に配置して迅速にソートすべきかどうか、昨年のアルゴリズムの授業で似たようなタイプの問題があったと思います.
テープ上のストレージファイルは、問題と同様の方法で解決できるようです.
テープストレージファイルの問題は,グリディアルゴリズムを用いて解く問題である.
グリディアルゴリズムの詳細については、以前にブログアドレスhttps://minime00.tistory.com/22を学習した記事を参照してください.
テープに格納されているファイルの問題
この問題は比較的多くの問題をかき集めたものだ.与えられた要素を配列に配置して迅速にソートすべきかどうか、昨年のアルゴリズムの授業で似たようなタイプの問題があったと思います.
テープ上のストレージファイルは、問題と同様の方法で解決できるようです.
テープストレージファイルの問題は,グリディアルゴリズムを用いて解く問題である.
グリディアルゴリズムの詳細については、以前にブログアドレスhttps://minime00.tistory.com/22を学習した記事を参照してください.
テープに格納されているファイルの問題
いったん保存したら、自分を読むために、私の前に余分な時間がかかります.
1)すべてのファイルが同じ頻度でアクセスされます.仮定
2)n個のファイルからあるファイルにランダムにアクセスするために必要なコストの基数値は
3)テープに格納する順序を変えたらどうなるでしょうか.
ㅠ(i)は、iの場所に保存するファイルの番号です.
ㅠ(1)=6
私たちがどのようにパイ関数を設定するかによって、コストが異なります.
質問:では、コストの値を最小限に抑えるにはどのような順序で決定すればいいのでしょうか.
どの順番が一番いいですか?
1番の位置にあるファイルは、ある位置にあるファイルを読み込もうとするたびに、1番の位置にあるファイルは折り畳まれて通過するしかありません.
つまり、前の書類は何度も
では、前の書類を成長させておけばいいです.だから、毎回何度も通るなら、小さなものを残したほうがいいです.
長さが増える順に置けばいい
人々は左に自分より年上の人が何人かいることしか覚えていない.
一列にn人立てなければならない.
列に並ぶときは、自分の左の人数の多い人を後ろに並べ、前の方が自分の左の人数の少ない人から並んでいればいいのです.
コード#コード#
package backjoon;
import java.io.IOException;
import java.util.*;
public class lineup_1138 {
Scanner sc=new Scanner(System.in);
ArrayList<Integer>list=new ArrayList<>();
int n;
n=sc.nextInt();
int a[]=new int[n+1];
for(int i=1;i<=n;i++){
a[i]=sc.nextInt();
}
for(int i=n;i>=1;i--){
list.add(a[i],i);
}
for(int k:list){
System.out.println(k);
}
}
}
Reference
この問題について([今日の珂太練習場]-1138列), 我々は、より多くの情報をここで見つけました https://velog.io/@minina/오늘의-코테-연습장-1138-한줄로-서기テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol