E
Size: a a a
E
def filenames(names, index = Hash.new(0))
names.map do |name|
index[name] += 1
if index[name] == 1
name
else
new_name = "#{name}(#{index[name] - 1})"
filenames([new_name], index).first
end
end
end
names = ["photo", "photo", "doc", "photo(1)", "photo"]
puts filenames(names) # ["photo", "photo(1)", "doc", "photo(1)(1)", "photo(2)"]
E
def filename(name, index)
index[name] += 1
if index[name] == 1
name
else
new_name = "#{name}(#{index[name] - 1})"
filename(new_name, index)
end
end
def filenames(names)
index = Hash.new(0)
names.map do |name|
filename(name, index)
end
end
names = ["photo", "photo", "doc", "photo(1)", "photo"]
puts filenames(names) # ["photo", "photo(1)", "doc", "photo(1)(1)", "photo(2)"]
RM
def filename(name, index)
index[name] += 1
if index[name] == 1
name
else
new_name = "#{name}(#{index[name] - 1})"
filename(new_name, index)
end
end
def filenames(names)
index = Hash.new(0)
names.map do |name|
filename(name, index)
end
end
names = ["photo", "photo", "doc", "photo(1)", "photo"]
puts filenames(names) # ["photo", "photo(1)", "doc", "photo(1)(1)", "photo(2)"]
V
TD
V
TD