예 주어 다수의 세트 s1={2,3,7}
, s2={1,2,4,7,8}
및 s3={4,7}
하는 벤 다이어그램 가시화가 설정된 여부의 요소인지에 따라, 내부 또는 곡선의 경계 외부에있는 폐곡선 및 집합 요소들에 의해 각각의 세트. 모든 집합 요소가 벤 다이어그램에 한 번만 나타나므로 요소가 둘 이상의 집합에있는 경우 각 집합을 나타내는 곡선이 겹치게됩니다. 우리 는 벤 다이어그램 의 셀 을 겹치는 것을 호출합니다 .
이 설명은 약간 혼란 스러울 수 있으므로 예제를 살펴 보겠습니다.
예
세트의 벤 다이어그램 s1
, s2
와 s3
같이 수 :
이 벤 다이어그램의 셀 (왼쪽에서 오른쪽으로, 위에서 아래로)되어 {1,8}
, {2}
, {7}
, {4}
, {3}
, {}
및 {}
.
실제로, 4 개 이상의 세트의 벤 다이어그램의 표현이 명확하지 않기 때문에, 하나는 일반적으로 2 개 또는 3 개의 세트의 벤 다이어그램만을 만난다. 그러나 예를 들어 CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=1472309의 6 가지 세트가 있습니다.
작업
합리적인 표현으로 비어 있지 않은 양의 정수 집합이 주어지면 입력 집합의 벤 다이어그램의 셀 집합을 반환하십시오. 특히 그래픽 표현이 필요 하지 않습니다.
- 당신은 전체 프로그램이나 함수를 작성할 수 있습니다.
- 빈 셀 (즉 있기 때문에 당신은 많은 빈 집합으로 반환 할 수 있습니다 목록 모든 셀의) 대신 하나의 빈 세트 (즉,의 세트 세포).
- 위의 예를 들어, 입력의 일부 합리적인 방법을 포함 하나 이에 국한되지 않습니다
{{2,3,7},{1,2,4,7,8},{4,7}}
,[[2,3,7],[1,2,4,7,8],[4,7]]
,"2,3,7;1,2,4,7,8;4,7"
또는"2 3 7\n1 2 4 7 8\n4 7"
. 선택한 입력 형식이 수용 가능한지 확실하지 않은 경우 언제든지 의견을 말하십시오. - 가능하면 출력 형식이 입력 형식과 일치해야합니다. 이 규칙을 사용하려면 형식이 빈 세트를 명확하게 표시 할 수 있어야합니다.
- 이것은 code-golf 이므로 원하는 언어로 가능한 적은 바이트를 사용하십시오. 언어 간이 아닌 언어 별 경쟁을 장려하기 위해 답변을받지 않습니다.
테스트 사례
다음은 가능한 출력과 함께 일부 입력입니다.
input -> output
{{2,3,7},{1,2,4,7,8},{4,7}} -> {{1,8},{2},{7},{4},{3},{}} (or {{1,8},{2},{7},{4},{3},{},{}})
{{1,2,3},{4,5,6},{7,8,9}} -> {{1,2,3},{4,5,6},{7,8,9},{}}
{{}} -> {{}}
{{1,2,3},{1,2}} -> {{1,2},{3},{}}
{{4,3,8},{1,2,9,3},{14,7,8,5},{6,11,3,8},{10},{9,4,3,7,10}} -> {{6,11},{10},{4},{3},{8},{5,14},{1,2},{9},{7},{}}
{{2,3,4,7},{},{1,3,7,5,6},{2,3,7,5},{7,2,4,3,6},{1,4,5}} -> {{},{4},{2},{7,3},{1},{6},{5}}
{{1,2,3,4},{1,2,5,6},{1,3,5,7}} -> {{4},{3},{2},{1},{6},{5},{7}}
{{1,2,3},{4,5,6},{7,8,9},{},{},{},{}}
않습니까?