set
을 이용하는 문제
1
부터 elements.size()
까지len
길이 만큼 각 원소의 합을 구해 set
에 넣어준다.element.size()
를 넘어간다면 원형 수열이기 때문에 -elements.size()
를 해준다.set
의 크기 리턴#include <string>
#include <vector>
#include <set>
using namespace std;
vector<int> elements;
set<int> s;
void sumVector(int len)
{
for(int i=0;i<elements.size();i++)
{
int sum = 0;
for(int j=i;j<i+len;j++)
{
if(j>=elements.size()) sum += elements[j-elements.size()];
else sum += elements[j];
}
s.insert(sum);
}
}
int solution(vector<int> elements) {
int answer = 0;
::elements = elements;
int len = 1;
while(len<=elements.size())
{
sumVector(len);
len++;
}
answer = s.size();
return answer;
}