La description
Étant donné un chemin source et un chemin de destination, sortez le chemin relatif vers la destination par rapport à la source.
Règles
L'entrée peut provenir de stdin ou comme arguments du programme / fonction.
Les chemins de style Windows et Unix doivent être pris en charge.
Le chemin de sortie peut utiliser
/et / ou\pour le séparateur de chemin (votre choix et la combinaison des deux est OK).Vous pouvez supposer qu'un chemin relatif est possible.
L'utilisation de programmes externes, de fonctions intégrées ou de bibliothèque conçues pour calculer des chemins relatifs est interdite (par exemple Python
os.path.relpath)C'est du code-golf
Modifier: nouvelle règle à partir des commentaires.
Le chemin relatif doit être le chemin relatif le plus court possible.
Supposons que le chemin de destination soit différent du chemin source.
Exemple 1
# In
/usr/share/geany/colorschemes
/usr/share/vim/vim73/ftplugin
# Out
../../vim/vim73/ftplugin
Exemple 2
# In
C:\Windows\System32\drivers
C:\Windows\System32\WindowsPowerShell\v1.0
# Out
..\WindowsPowerShell\v1.0
../vim/vim73/ftplugin?
../../vim\vim73\ftplugin.