Add tasks for all the new languages
This commit is contained in:
parent
9dc3c2bb62
commit
bba7bfd280
13208 changed files with 134745 additions and 0 deletions
17
Task/ABC-Problem/Sidef/abc-problem-1.sidef
Normal file
17
Task/ABC-Problem/Sidef/abc-problem-1.sidef
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
func can_make_word(word, blocks) {
|
||||
|
||||
blocks.map! { |b| b.uc.chars.sort.join }.freq!
|
||||
|
||||
func(word, blocks) {
|
||||
var char = word.shift
|
||||
var candidates = blocks.keys.grep { |k| 0 <= k.index(char) }
|
||||
|
||||
for candidate in candidates {
|
||||
blocks{candidate} <= 0 && next;
|
||||
local blocks{candidate} = (blocks{candidate} - 1);
|
||||
return true if (word.is_empty || __FUNC__(word, blocks));
|
||||
}
|
||||
|
||||
return false;
|
||||
}(word.uc.chars, blocks)
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue