Editorial for WC '15 Contest 4 J2 - Mission Briefing
Submitting an official solution before solving the problem yourself is a bannable offence.
Given a string, we want to count how many substrings from the set 001
…009
occur. By reading the question carefully, one should notice that multiple instances of the same string should be counted only once. Namely, 001.abc.001a
should only count 1
towards the final answer. Furthermore, from the sample input and output, one should understand that the string can be surrounded by anything, including other digits. Namely, an occurrence of .20001.
should still be counted as 001
. We should therefore not assume that strings are surrounded by punctuation. Finally, we should not consider 000
to be a valid agent.
Assuming the string has 0
, and then check to make sure the current index is a digit from 1
to 9
(most programming languages support directly comparing ASCII characters). If so, set the corresponding boolean variable to true. To get the answer, count the number of true values in the boolean array. This solution runs in
An alternate solution is to just use string searching functions in the standard library of your programming language (e.g. string::find()
in C++), which should take
Comments