Guest User

Untitled

a guest
May 27th, 2018
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.12 KB | None | 0 0
  1. import java.util.Scanner;
  2. class kucingwarnawarni{
  3. static boolean sudah = false;
  4. public static void main(String[] args) {
  5. Scanner sc = new Scanner(System.in);
  6. int T = sc.nextInt();
  7. int[] N = new int[T];
  8. int[] M = new int[T];
  9. int[] K = new int[T];
  10. for (int i = 0; i < T; i++) {
  11. N[i]=sc.nextInt();
  12. M[i]=sc.nextInt();
  13. K[i]=sc.nextInt();
  14. }
  15. for (int i = 0; i < T; i++) {
  16. fullGenerate(N[i], M[i], K[i]);
  17. }
  18. }
  19. static boolean apaSemuaElemenBeda(int[] array, int i, int j){
  20. for (int a = i; a < j; a++) {
  21. for (int b = a+1; b <= j; b++) {
  22. if (array[a]==array[b]) {
  23. return false;
  24. }
  25. }
  26. }
  27. return true;
  28. }
  29. static int hitungPasanganIndah(int[] array){
  30. int hitung=0;
  31. for (int a = 0; a < array.length; a++) {
  32. for (int b = a; b < array.length; b++) {
  33. if(apaSemuaElemenBeda(array, a, b)){
  34. hitung++;
  35. }
  36. }
  37. }
  38. return hitung;
  39. }
  40. static void tulisArray(int[] array){
  41. for (int i : array) {
  42. System.out.print((i+1)+" ");
  43. }
  44. System.out.println();
  45. }
  46. static void generate(int[] array, int index, int basis, int pasangan){
  47. for (int i = 0; i < basis; i++) {
  48. array[index] = i;
  49. if(index>0){
  50. generate(array, index-1, basis, pasangan);
  51. if (sudah == true) {
  52. return;
  53. }
  54. }else{
  55. if(hitungPasanganIndah(array)==pasangan){
  56. sudah = true;
  57. tulisArray(array);
  58. }
  59. }
  60. }
  61. }
  62. static void fullGenerate(int index, int basis, int pasangan){
  63. int[] array = new int[index];
  64. generate(array, index-1, basis, pasangan);
  65. if (sudah == false) {
  66. for (int i : array) {
  67. System.out.print("-1 ");
  68. }
  69. System.out.println();
  70. }
  71. sudah = false;
  72. }
  73. }
Add Comment
Please, Sign In to add comment