Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
F
FirefighterStarter
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Requirements
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Locked files
Build
Pipelines
Jobs
Pipeline schedules
Test cases
Artifacts
Deploy
Releases
Package registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Code review analytics
Issue analytics
Insights
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
GitLab community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
BELHACHEMI Mehdi
FirefighterStarter
Compare revisions
main to 8fc54d7563b6a5f4fba918c684151446233af1fd
Compare revisions
Changes are shown as if the
source
revision was being merged into the
target
revision.
Learn more about comparing revisions.
Source
b22015516/firefighterstarter
Select target project
No results found
8fc54d7563b6a5f4fba918c684151446233af1fd
Select Git revision
Branches
main
variant
2 results
Swap
Target
couetoux.b/firefighterstarter
Select target project
m19023837/firefighter-starter-mansour-chadi-chahine-rami
r24025701/firefighterstarter
n24026202/firefighterstarter
couetoux.b/firefighterstarter
b23027938/firefighterstarter
z20039716/fire-fighter
a18023913/firefighterstarter
o22010261/firefighterstarter
b22015516/firefighterstarter
alaboure/firefighter-template
p21211679/firefighter-luis-parra-yanis-lounadi
v23014723/firefighter-project
k20014011/firefighter-template
m23022217/firefighter-template
p20006624/firefighter-template
l21221596/firefighter-template
s21232465/firefighter-template
y21224754/firefighter-template
w21225935/firefighter-template
h22023886/firefighter-template
b21221604/firefighter-template-boucenna-yacine-zeghar-mohamed-lamine
c23025119/firefighterstarter
b20031964/firefighterstarter
23 results
main
Select Git revision
Branches
main
variant
2 results
Show changes
Only incoming changes from source
Include changes to target since source was created
Compare
Commits on Source (3)
creation des classes fire et firefighter by Asfour Mohamed
· 8e5bd540
ASFOUR Mohamed
authored
7 months ago
8e5bd540
mehdi : modifiying initializeElements() method
· 3e4b0ab5
BELHACHEMI Mehdi
authored
7 months ago
3e4b0ab5
mehdi : modifiying initializeElements() method
· 8fc54d75
BELHACHEMI Mehdi
authored
7 months ago
8fc54d75
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
src/main/java/model/Fire.java
+22
-0
22 additions, 0 deletions
src/main/java/model/Fire.java
src/main/java/model/FireFighter.java
+24
-0
24 additions, 0 deletions
src/main/java/model/FireFighter.java
src/main/java/model/FirefighterBoard.java
+19
-13
19 additions, 13 deletions
src/main/java/model/FirefighterBoard.java
with
65 additions
and
13 deletions
src/main/java/model/Fire.java
0 → 100644
View file @
8fc54d75
package
model
;
import
util.Position
;
import
java.util.Set
;
public
class
Fire
{
private
Position
firePositions
;
public
Fire
(
Position
position
){
this
.
firePositions
=
position
;
}
public
void
setFirePosition
(
Position
postion
){
this
.
firePositions
=
postion
;
}
public
Position
getFirePosition
()
{
return
firePositions
;
}
}
This diff is collapsed.
Click to expand it.
src/main/java/model/FireFighter.java
0 → 100644
View file @
8fc54d75
package
model
;
import
util.Position
;
import
java.util.List
;
public
class
FireFighter
{
private
Position
FireFighterPosition
;
public
FireFighter
(
Position
position
){
this
.
FireFighterPosition
=
position
;
}
public
void
setFireFighterPosition
(
Position
postion
){
this
.
FireFighterPosition
=
postion
;
}
public
Position
getFireFighterPosition
()
{
return
FireFighterPosition
;
}
}
This diff is collapsed.
Click to expand it.
src/main/java/model/FirefighterBoard.java
View file @
8fc54d75
...
...
@@ -8,11 +8,11 @@ import java.util.*;
public
class
FirefighterBoard
implements
Board
<
List
<
ModelElement
>>
{
private
final
int
columnCount
;
private
final
int
rowCount
;
private
final
int
initialFireCount
;
private
final
int
initialFirefighterCount
;
private
final
int
initialFireCount
;
private
List
<
FireFighter
>
firefighter
;
private
Set
<
Fire
>
fire
;
private
final
TargetStrategy
targetStrategy
=
new
TargetStrategy
();
private
List
<
Position
>
firefighterPositions
;
private
Set
<
Position
>
firePositions
;
private
Map
<
Position
,
List
<
Position
>>
neighbors
=
new
HashMap
();
private
final
Position
[][]
positions
;
private
int
step
=
0
;
...
...
@@ -40,12 +40,14 @@ public class FirefighterBoard implements Board<List<ModelElement>> {
}
public
void
initializeElements
()
{
firefighterPositions
=
new
ArrayList
<>();
firePositions
=
new
HashSet
<>();
for
(
int
index
=
0
;
index
<
initialFireCount
;
index
++)
firePositions
.
add
(
randomPosition
());
firefighter
=
new
ArrayList
<>();
fire
=
new
HashSet
<>();
for
(
int
index
=
0
;
index
<
initialFireCount
;
index
++){
fire
.
add
(
new
Fire
(
randomPosition
()));
}
for
(
int
index
=
0
;
index
<
initialFirefighterCount
;
index
++)
firefighter
Positions
.
add
(
randomPosition
());
firefighter
.
add
(
new
FireFighter
(
randomPosition
())
)
;
}
private
Position
randomPosition
()
{
...
...
@@ -55,11 +57,15 @@ public class FirefighterBoard implements Board<List<ModelElement>> {
@Override
public
List
<
ModelElement
>
getState
(
Position
position
)
{
List
<
ModelElement
>
result
=
new
ArrayList
<>();
for
(
Position
firefighter
Position
:
firefighter
Positions
)
if
(
firefighterPosition
.
equals
(
position
))
for
(
FireFighter
firefighter
:
firefighter
)
if
(
firefighter
.
getFireFighter
Position
()
.
equals
(
position
))
result
.
add
(
ModelElement
.
FIREFIGHTER
);
if
(
firePositions
.
contains
(
position
))
for
(
Fire
fire
:
fire
){
if
(
fire
.
getFirePosition
().
equals
(
position
)){
result
.
add
(
ModelElement
.
FIRE
);
}
}
return
result
;
}
...
...
@@ -84,7 +90,7 @@ public class FirefighterBoard implements Board<List<ModelElement>> {
List
<
Position
>
modifiedPositions
=
new
ArrayList
<>();
if
(
step
%
2
==
0
)
{
List
<
Position
>
newFirePositions
=
new
ArrayList
<>();
for
(
Position
fire
:
fire
Position
s
)
{
for
(
Fire
fire
:
fires
)
{
newFirePositions
.
addAll
(
neighbors
.
get
(
fire
));
}
firePositions
.
addAll
(
newFirePositions
);
...
...
This diff is collapsed.
Click to expand it.