Advertisement
Guest User

undian

a guest
Mar 18th, 2018
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.50 KB | None | 0 0
  1.  
  2. import java.util.Scanner;
  3.  
  4. /*
  5. * To change this license header, choose License Headers in Project Properties.
  6. * To change this template file, choose Tools | Templates
  7. * and open the template in the editor.
  8. */
  9.  
  10. /**
  11. *
  12. * @author Kevin Draven
  13. */
  14. public class Bet {
  15. public static void main(String[] args) {
  16. Scanner sc = new Scanner(System.in);
  17. int n = sc.nextInt();
  18. String[] name =new String[n];
  19. for (int i = 0; i < name.length; i++) {
  20. name[i]=sc.next();
  21. }
  22. String wanted = sc.next();
  23. Bet bet = new Bet();
  24. System.out.println(bet.solve(name,wanted));
  25. }
  26. public String solve(String[] name, String wanted){
  27. String hasil = "";
  28. int found = this.search(name,wanted,0,name.length-1);
  29. if(found==0){
  30. hasil+=name[2]+"\n"+name[1]+"\n"+name[found];
  31. }
  32. else if(found==name.length-1){
  33. hasil+=name[found]+"\n"+name[found-1]+"\n"+name[found-2];
  34. }
  35. else{
  36. hasil+=name[found+1]+"\n"+name[found]+"\n"+name[found-1];
  37. }
  38. return hasil;
  39. }
  40. public int search(String[] name,String wanted, int left, int right){
  41. if(left>right)return 0;
  42. else{
  43. int mid=(left+right)/2;
  44. if(name[mid].equals(wanted))return mid;
  45. else if(name[mid].compareTo(wanted)==-1)return search(name,wanted,left,mid-1);
  46. else return search(name,wanted,mid+1,right);
  47. }
  48. }
  49. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement