Count the number of distinct slices (containing only unique numbers).
#include <set>int solution(int M, vector<int> &A) { // write your code in C++11 (g++ 4.8.2) int start = 0; int end = 0; int s = int(A.size()); int num = 0; set<int> ss; while((start <= end) && (end < s)) { if (ss.find(A[end]) == ss.end()) { num++; ss.insert(A[end]); end++; } else { ss.clear(); start++; end = start; } } num += int((ss.size() - 1) * ss.size()) / 2; return num;}
Solution
Pay attention to large_the_same
sequence of the same value value