JavaScript Disabled

ini soal dari programming contest di binus,nah soalnya kaya gini:

contoh problemnya:

nama depan :kode 'D' atau 'd'
nama keluarga:kode 'K' atau 'k'
umur: kode 'U' atau 'u'
tinggi badan kode 'T' atau 't'
berat badan:kode 'B' atau 'b'



kita diminta untuk mengurutkan data berdasarkan kombinasi kriteria diatas.kriteria diberikan dalam bentuk string.contoh kita ketik kata "DUT",maka tampilan yg muncul adalah "nama depan" secara ascending.untuk penduduk yg "nama depan" yg sama maka anda harus mengurutkan dengan melihat "umur" secara descending,kalo "nama depan "dan "umur" masih sama maka dilihat dari "tinggi badan" secara descending.jika masih ada persamaan dari ketiga tadi,maka dilihat dari mendahulukan penduduk yg tertulis namanya duluan.

input

baris pertama input berisi 2 bilangan bulat N(1<=N<=1000) dan k(1<=K<=10)
dimana N menunjukkanjumlah penduduk yang terdaftar dalam sensus dan K menunjukkan string pengurutan.n baris berikutnya masing masing informasi penduduk dgn format sebagai berikut:



- "nama depan" dan "nama belakang" berisi 1-20 karakter alphabet dan huruf pertama selalu diberikan dalam huruf kapital,dan huruf huruf lainnya dalam huruf kecil
- "umur"berkisar dari 0-100
-"tinggi badan" berkisar 20-250
-"berat badan" berkisar dari 1-150

setelah informasi penduduk ,K baris berikutnya masing masing menunjukkan kriteris pengurutan.setiap kriteria mengandung tidak lebih dari 5 karakter.karakter yg diperbolehkan adalah D,d,K,k,U,u,B,b sesuai dengan informasi diatas .kriteria tidak pernah mengandung huruf yg sama(dalam bentuk huruf besar atau huruf kecil)

output

utk kriteria pengurutan anda harus mencetak setiap "nama depan"dan "nama belakang" penduduk desa sesuai kriteria pengurutan .antar blok output kriteria dipisahkan oleh satu baris kosong.

sample input
5 3
kadir susdodol 50 135 70
kadir juga 40 136 69
jaka tingkir 50 137 68
jaka tarub 50 138 67
jaka sembung 50 139 66
Dut
tuD
DU

sample output
jaka sembung
jaka tarub
jaka tingkir
kadir sudodol
kadir juga

jaka sembung
jaka tarub
jaka tingkir
kadir juga
kadir sudodol

jaka tingkir
jaka tarub
jaka sembung
kadir juga
kadir susudodol

keterangan:
utk kriteria pengurutan pertama,semua yg mempunyai nama depan jaka akan dicetak duluan dibandingkan kadir,semua penduduk bernama jaka ternyata berumur sama,jadi harus diantara ketiga jaka ini harus ditentukan dengan tinggi badan ascending.

Ada yang berminat untuk mencoba..??
klo udah jadi, tolong dipost disini yah.

0 Whisper

Post a Comment

Please, your comment must related with current posting otherwise your comment will mark as Spam.