Hirdetés
Új hozzászólás Aktív témák
-
#74220800
törölt tag
válasz
#74220800 #9247 üzenetére
Na az előző verzió majdnem jó. Valamiért néha sorokon vagy oszlopokon belül berakja egymás mellé a hajókat. Kiszedtem belőle egy kisebb reszt. Ez a hatodik sorba próbál berakni két darab 4es hajót véletlenül.
Sajnos néha egymás mellé.. Valaki jöjjön plsssssssssss.public class Tesztsor{ //java Tesztsor
public static void main(String[] args){
int [] randomatrix ={0,1,2,3,4,5,6,7,8,9};
boolean[][] hajok = new boolean [10][10];
for(int j = 0; j < randomatrix.length; j++){
int w = (int)(Math.random()*10);
int g = randomatrix[w];
randomatrix[w] = randomatrix[j];
randomatrix[j] = g;
}
hajokatSorra(5, randomatrix, 4, hajok);
hajokatSorra(5, randomatrix, 4, hajok);
for(int i = 0; i < hajok.length; i++){
for(int j = 0; j < hajok[i].length; j++){
if (hajok[i][j])
System.out.print("H");
else
System.out.print("-");
}
System.out.println();
}
}
public static boolean hajokatSorra(int x, int[] arr, int size, boolean[][] hajok ){
boolean shipreadyleft = false;
boolean shipreadyright = false;
for( int k = 0; k < arr.length; k++){
int point = arr[k];
for( int j = point; j >= 0; j--){
if( hajok[x][j] ){
if ( point - j >= 2 ) shipreadyleft =true;
break;
}
if( hajok[ Math.max(0,x-1)][j] || hajok[ Math.min(9,x+1)][j] ){
if (point - j >= 1 ) shipreadyleft =true;
break;
}
if( j == 0 ) shipreadyleft =true;
}
if (shipreadyleft){
for( int j = point; j < hajok.length; j++){
if( hajok[x][j] ){
if( j - point >= size + 1 ) shipreadyright =true;
break;
}
if( hajok[ Math.max(0,x-1)][j] || hajok[ Math.min(9,x+1)][j] ){
if ( j - point >= size ) shipreadyright =true;
break;
}
if( j == hajok.length - 1 && hajok.length - 1 - point >= size - 1 ) shipreadyright =true;
}
}
if ( shipreadyright ){
for( int j = point; j - point + 1 <= size; j++){
hajok[x][j] = true;
}
}
if ( shipreadyright && shipreadyleft) break;
}
return shipreadyright && shipreadyleft;
}
}
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- ÚJ állapotú Lenovo 15,6"FullHD IPS,Ryzen5(6x4Ghz)Vega 6 VGA,12-20GB RAM,SSD+HDD
- Glorious Model O Wired White szinte új, dobozos
- EVGA 850GQ - hibátlan, tesztelt, teljes szett - eladó!
- Meletrix ZOOM TKL DYNA - féláron
- AMD Ryzen 5 5600 6-Core 3.5GHz AM4 Box (100-100000927BOX) - Azonnal átvehető, Számla + Garancia: 1év
- GYÖNYÖRŰ iPhone 13 Mini 256GB Red-1 ÉV GARANCIA - Kártyafüggetlen MS2213 ,96% Akkumulátor
- HIBÁTLAN iPhone 13 128GB Midnight -1 ÉV GARANCIA - Kártyafüggetlen, MS3543
- ÁRGARANCIA!Épített KomPhone Ryzen 7 7800X3D 32/64GB RAM RTX 5080 16GB GAMER PC termékbeszámítással
- Targus DOCK423A - USB-C Dual HDMI 4K HUB - 2 x HDMI (120Hz)
- Honor X7 128GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest