Hey guys, this is my first solution here. I would love to hear feedback and learn something new! Written in Java
import java.util.Scanner;
/**
* Created by blanonymous on 03.06.15.
*
* http://www.reddit.com/r/dailyprogrammer/comments/3840rp/20150601_challenge_217_easy_lumberjack_pile/
*/
public class LumberJacks {
private int[] arr;
private int logs;
private int grid;
private int oldMin;
public static void main(String[] args) {
LumberJacks a = new LumberJacks();
a.input();
a.relocate();
a.print();
}
private void input(){
Scanner sc = new Scanner(System.in);
grid = sc.nextInt();
logs = sc.nextInt();
arr = new int[grid*grid];
int j = 0;
while(j < grid*grid) {
arr[j] = sc.nextInt();
j++;
}
}
private void relocate(){
int toPut = -1;
while(logs > 0){
if(toPut - oldMin == 0) {
toPut = findMin();
}
for(int i = 0; i < arr.length; i++){
if(arr[i] == toPut){
arr[i]++;
logs--;
}
}
toPut++;
}
}
private int findMin(){
int min = Integer.MAX_VALUE;
for (int anArr : arr) {
if (anArr < min) {
oldMin = min;
min = anArr;
}
}
return min;
}
private void print(){
int brake = 1;
for(int j = 0; j < arr.length; j++){
System.out.print(arr[j] + " ");
if(brake % grid == 0){
System.out.println();
}
brake++;
}
}
}