Page de Bastien pour la Prep'ISIMA

Bastien TABORDET

PREP'ISIMA
2024-2025

Longest Coast

Introduction

Le Longest Coast est un problème où l'on doit trouver la plus grande côte (continue) d'une île afin de renvoyer
d'une part le nombre blocs d'eaux qui composent le littoral de l'île et d'autre part la position de l'île.

Description et détail algorithmique

L'algorithme que j'ai utilisé va parcourir la grille de l'île en profondeur (ce qu'on appelle le DFS)
notamment avec la fonction "cmpt" qui va explorer chaque bloc de l'île et vérifier si ses blocs adjacents sont de l'eau ou non.
La fonction "creset" va nous permettre de ne pas compter deux fois un bloc en "réinitialisant" les blocs d'eau de la carte.
Ces deux fonctions vont être éxécutées en sachant que le symbole "~" représente un bloc d'eau et le symbole "#" représente un bloc de terre.

Résolution du Longest Coast

Résolution du Longest Coast Résolution du Longest Coast

Analyse des résultats

Cet algorithme a réussi à passer 6 des 7 tests. Je n'ai pas encore réussi à trouver d'où provenait l'erreur
même si je pense que cela est lié à la variable "ctotale" ou a un problème d'optimisation.

Description d'une solution différente

Cette solution provient du profil de "Skreamly".
Il a utilisé afin de résoudre le problème un algorithme qui va explorer la carte dans laquelle les blocs adjacents vont être explorés
et les blocs adjacents de ceux-ci vont l'être aussi (et ainsi de suite jusqu'à avoir exploré toute l'île).
Cela permet une "exploration" blocs par blocs ce qui garantit de ne pas passer à côté d'une côte.

Autre solution du Longest Coast Autre solution du Longest Coast

Bilan de mes apprentissages (REX)

Ce codingame et les deux algorithmes m'ont permis d'approfondir certaines notions en C
ainsi que de découvrir le parcours d'une "carte" en profondeur.
Je suis un peu déçu de n'avoir pas réussi à passer le dernier test
surtout que je pense qu'il s'agit d'un problème tout simple ou d'une erreur d'innattention.