diff options
Diffstat (limited to 'src/bin/p0028.rs')
| -rw-r--r-- | src/bin/p0028.rs | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/bin/p0028.rs b/src/bin/p0028.rs new file mode 100644 index 0000000..c830ac4 --- /dev/null +++ b/src/bin/p0028.rs @@ -0,0 +1,20 @@ +impl Solution { + pub fn str_str(haystack: String, needle: String) -> i32 { + if needle.len() > haystack.len() { return -1; } + for i in 0..haystack.len() - needle.len()+1 { + let mut failed = false; + for j in 0..needle.len() { + if haystack.as_bytes()[i+j] != needle.as_bytes()[j] { + failed = true; + break; + } + } + if !failed { return i as i32; } + } + -1 + } +} +struct Solution { } +fn main() { + println!("{}", Solution::str_str("abaaa".to_string(), "abb".to_string())); +}
\ No newline at end of file |
