【模拟】伯虎点秋香

题目:伯虎点秋香 rqnoj144

题目描述

题目描述:
上次唐伯虎点秋香那是秋香自己跑出来滴,这次他可要真的自己点了,下面由我来描述一下点的规则.当然事先要列举所有姑娘的匿名咯,我要对他进行1次提问,我问他对第几个姑娘感兴趣,他选的当然是他的意中人咯.

输入格式

第一行为一个整数小于1001的整数n,k.从第二行到第n+1行是对每个姑娘的名字.

输出格式

输出文件有且仅有一行,为他点中的“秋香”即第k个名字

样例输入

5 3 faff adf beig plaie zfdeegeetulae

样例输出

faff

字符串排序,按快拍写就是了,然后输出第k个

pascal代码

var
  n,k:longint;
  a:array[0..1001+10] of ansistring;

procedure init;
begin
  assign(input,'rqnoj144.in');
  assign(output,'rqnoj144.out');
  reset(input);
  rewrite(output);
end;
procedure outit;
begin
  close(input);
  close(output);
  halt;
end;

procedure readdata;
begin
end;

procedure swap(var a,b:ansistring);
var t:ansistring;
begin
  t:=a;a:=b;b:=t;
end;

procedure qsort(l,r:longint);
var
  i,j:longint;
  x:ansistring;
begin
  i:=l;j:=r;x:=a[(i+j)div 2];
  repeat
    while a[i]<x do inc(i);
    while a[j]>x do dec(j);
    if i<=j then
    begin
      swap(a[i],a[j]);
      inc(i);dec(j);
    end;
  until i>j;
  if i<r then qsort(i,r);
  if l<j then qsort(l,j);
end;

procedure main;
var
  i:longint;
begin
  readln(n,k);
  for i:=1 to n do readln(a[i]);
  qsort(1,n);
  writeln(a[k]);
end;


begin
  init;
  readdata;
  main;
  outit;
end.

 

 

转载于:https://www.cnblogs.com/oijzh/archive/2012/08/17/2643587.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值