Quellcode durchsuchen

New problem complete

master
Lachlan Jacob vor 5 Jahren
Ursprung
Commit
6661850dcc
3 geänderte Dateien mit 52 neuen und 0 gelöschten Zeilen
  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 Datei anzeigen

@@ -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 Datei anzeigen

@@ -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 Datei anzeigen

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

rustc main.rs
./main
rm main

Laden…
Abbrechen
Speichern