SHOW:
|
|
- or go back to the newest paste.
1 | package com.company; | |
2 | ||
3 | import java.util.Random; | |
4 | import java.util.Scanner; | |
5 | import java.util.stream.IntStream; | |
6 | import java.util.stream.LongStream; | |
7 | ||
8 | /* | |
9 | Meg kell adni M db kétüléses padot (max 20 db) és N db diákot (max N*2). Random le kell őket ültetni, úgy, hogy 1 helyre csak 1 diák ülhet, majd kiiratni, hogy hányadik pad, bal vagy jobb oldalt ül-e | |
10 | */ | |
11 | public class Main { | |
12 | ||
13 | public static void main(String[] args) { | |
14 | int m = 0; | |
15 | int n = 0; | |
16 | int mMax = 20; | |
17 | int rnd = 0; | |
18 | int pad = 0; | |
19 | String oldal = ""; | |
20 | ||
21 | Scanner scanner = new Scanner(System.in); | |
22 | ||
23 | do { | |
24 | System.out.println("Enter M: "); | |
25 | m = scanner.nextInt(); | |
26 | } while (m > mMax); | |
27 | do { | |
28 | System.out.println("Enter N: "); | |
29 | n = scanner.nextInt(); | |
30 | } while (n > 2 * m); | |
31 | ||
32 | int[] RH = new int[n]; | |
33 | Random random = new Random(); | |
34 | for (int i = 0; i < n; i++) { | |
35 | boolean found = false; | |
36 | do { | |
37 | rnd = random.nextInt(n) + 1; | |
38 | int finalRnd = rnd; | |
39 | found = IntStream.of(RH).anyMatch(x -> x == finalRnd); | |
40 | } while (found); | |
41 | RH[i] = rnd; | |
42 | } | |
43 | ||
44 | ||
45 | for (int i = 0; i < RH.length; i++) { | |
46 | if (RH[i] % 2 == 0) { | |
47 | oldal = "jobb"; | |
48 | pad = (RH[i] / 2); | |
49 | } else { | |
50 | oldal = "bal"; | |
51 | pad = ((RH[i] + 1) / 2); | |
52 | } | |
53 | System.out.println(i+1 + ". diák " + pad + ". pad " + oldal + " oldal"); | |
54 | } | |
55 | ||
56 | } | |
57 | } |