Advertisement
Guest User

Untitled

a guest
Mar 24th, 2019
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.16 KB | None | 0 0
  1. public abstract class Spiewakk implements Comparable<Spiewakk>{
  2. String nazwisko;
  3. int numerStartowy;
  4. static int liczbaSpiewakow;
  5.  
  6.  
  7. public Spiewakk(String nazwisko){
  8. this.nazwisko = nazwisko;
  9. this.numerStartowy = ++liczbaSpiewakow;
  10. }
  11. abstract String spiewaj();
  12.  
  13.  
  14. @Override
  15. public int compareTo(Spiewakk o) {
  16. int zwrot = 0;
  17. if(this.zliczaj(this.spiewaj())-o.zliczaj(o.spiewaj())>0 ||this.zliczaj(this.spiewaj())-o.zliczaj(o.spiewaj())<0 ){
  18. zwrot = this.spiewaj().compareTo(o.spiewaj());
  19. return zwrot;
  20. }
  21. if(this.zliczaj(this.spiewaj())-o.zliczaj(o.spiewaj())==0) {
  22. if (this.nazwisko.compareTo(o.nazwisko) > 0|| this.nazwisko.compareTo(o.nazwisko) < 0) {
  23. zwrot = this.nazwisko.compareTo(o.nazwisko);
  24. return zwrot;
  25. }
  26. if (this.nazwisko.compareTo(o.nazwisko) == 0) {
  27. if (this.numerStartowy - o.numerStartowy > 0||this.numerStartowy - o.numerStartowy < 0) {
  28. zwrot = this.numerStartowy - o.numerStartowy;
  29. return zwrot;
  30. }
  31.  
  32. }
  33. }
  34. return zwrot;
  35. }
  36.  
  37. public String toString(){
  38. return "("+this.numerStartowy+") "+ this.nazwisko+ ": " + spiewaj();
  39. }
  40. public static Spiewakk najglosniej(Spiewakk spiewacy[]){
  41. int pozycja=0;
  42. for(int i = 0; i<spiewacy.length;i++){
  43. if(spiewacy[pozycja].zliczaj(spiewacy[pozycja].spiewaj())<spiewacy[i].zliczaj(spiewacy[i].spiewaj())){
  44. pozycja = i;
  45. }
  46. }
  47. return spiewacy[pozycja];
  48. }
  49.  
  50. public int zliczaj(String zrodlo){
  51. int ilosc = 0;
  52. boolean[] omin = new boolean[zrodlo.length()];
  53. for (int i = 0; i <= zrodlo.length()-1; i++){
  54. if(omin[i] != true){
  55. ilosc++;
  56. for(int n = 0; n <= zrodlo.length()-1; n++)
  57. if(zrodlo.charAt(i) == zrodlo.charAt(n)) {
  58. omin[i] = omin[n] = true;
  59. }
  60. }
  61.  
  62. }
  63. return ilosc;
  64. }
  65. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement