Selaa lähdekoodia

New problem complete

master
Lachlan Jacob 5 vuotta sitten
vanhempi
commit
6661850dcc
3 muutettua tiedostoa jossa 52 lisäystä ja 0 poistoa
  1. 20
    0
      problems/1207/main.rs
  2. 27
    0
      problems/1207/problem.txt
  3. 5
    0
      problems/1207/run.sh

+ 20
- 0
problems/1207/main.rs Näytä tiedosto

@@ -0,0 +1,20 @@
use std::collections::HashMap;

pub fn unique_occurrences(arr: Vec<i32>) -> bool {
let mut hm = HashMap::<i32, i32>::new();
for n in arr {
let count = hm.entry(n).or_insert(0);
*count += 1;
}
let mut vals: Vec<&i32> = hm.values().collect();
vals.sort();
let og_length = vals.len();
vals.dedup_by_key(|i| *i);
let new_length = vals.len();
og_length == new_length
}

pub fn main() {
println!("Expected: true");
println!("Got: {}", unique_occurrences(vec![1, 2, 2, 3, 3, 3]));
}

+ 27
- 0
problems/1207/problem.txt Näytä tiedosto

@@ -0,0 +1,27 @@
Given an array of integers arr, write a function that returns true if and only if the number of occurrences of each value in the array is unique.


Example 1:

Input: arr = [1,2,2,1,1,3]
Output: true
Explanation: The value 1 has 3 occurrences, 2 has 2 and 3 has 1. No two values have the same number of occurrences.

Example 2:

Input: arr = [1,2]
Output: false

Example 3:

Input: arr = [-3,0,1,-3,1,1,1,-3,10,0]
Output: true


Constraints:

1 <= arr.length <= 1000
-1000 <= arr[i] <= 1000


+ 5
- 0
problems/1207/run.sh Näytä tiedosto

@@ -0,0 +1,5 @@
#!/bin/bash

rustc main.rs
./main
rm main

Loading…
Peruuta
Tallenna