a block of file store 100/5=20 record
so no of block required to store file=1000/20=50 block
so we create primary index on 50 block means primary index contain 50 entry
size of one entry of primary index=5B (for key)+5B (for block pointer)=10B
one block can store 100/10=10 entry of index
no of block req to store index=50/10=5
searching an entry in index use binary serarch require log(5) block access>2 means 3 at worst case
+1 for finding key in data file
so total 4 block access required