AlgoLensArena
ContestlərProblemlərOtaqlar
Vizualizator
← Məsələlər

DAPC21-046.`git mv`

Medium · 1 s · 256 MB

  • icpc
  • dapc
  • 2021

During development, you recently moved a file from one location to another. To keep your development team up to date with the change you made, you want to send them a short description of the change, without making use of any versioning software.

Both the source location and destination are valid Unix path names, that is, a nonempty string consisting of lowercase letters and “/” such that no “/” occurs at the begin or the end, nor does it contain two consecutive forward slashes.

You need to find the shortest string of the form “A{B => C}D” such that:

• The source location is “ABD” and the destination is “ACD”, where double forward slashes should be read as one forward slash. For example, if a file is moved from “a/c” to “a/b/c”, we can describe this movement by “a/{ => b}/c”, meaning the source location was “a/c” and not “a//c”.

• The string AAA is empty or ends with a forward slash, and similarly DDD is empty or starts with a forward slash.

• Both BBB and CCC do not start or end with a forward slash.

Giriş formatı

The input consists of:

• One line containing the source location.

• One line containing the destination location.

Both lines will contain at most 10610^6106 characters, will not begin or end with a forward slash and will not contain any directory name twice. The two strings are guaranteed to be different.

Çıxış formatı

Output the shortest replacement string that transforms the source location to the destination, satisfying the above constraints.

Qeyd

Source: Delft Algorithm Programming Contest 2021 · Author: Ragnar Groot Koerkamp · License: CC BY-SA 4.0 · Original: https://dapc.wisv.ch · Statement adapted for AlgoLens and shared under the same license.

Nümunələr

Giriş #1

www/public/passwords
private/passwords

Çıxış #1

{www/public => private}/passwords

Giriş #2

home/linus/downloads/image
home/linus/pictures/recent/image

Çıxış #2

home/linus/{downloads => pictures/recent}/image