Skip to content
This repository has been archived by the owner on Aug 31, 2021. It is now read-only.

Latest commit

 

History

History
28 lines (19 loc) · 1.18 KB

instructions.md

File metadata and controls

28 lines (19 loc) · 1.18 KB

Instructions

In this exercise you'll be using a HashMap, along with entry API methods, to solve a simple algorithm problem.

Given &[&str] representing the words of a magazine article, and &[&str] representing the words of a note you would like to send, can you compose your note by cutting words out of the magazine and pasting them into a letter?

Notes:

  • This implies physical cutting and pasting; the magazine needs to contain at least as many copies of each word as the note requires.
  • Capitalization matters; just because you're pasting together a note composed from words of a magazine doesn't mean you're willing to be ungrammatical.

You'll start with the following stubbed function signature:

pub fn can_construct_note(magazine: &[&str], note: &[&str]) -> bool {
    unimplemented!()
}

Given the following input

let magazine = "two times three is not four".split_whitespace().collect::<Vec<&str>>();
let note = "two times two is four".split_whitespace().collect::<Vec<&str>>();
assert_eq!(can_construct_note(&magazine, &note), false);

The function returns false since the magazine only contains one instance of "two" when the note requires two of them.