키-값 쌍 세트로 맵을 정의합니다. 이 문제를 해결하려면 각 값을 가져 와서 임의로 선택한 키에 할당해야합니다.
- 임의로 값을 섞고 결과 맵을 출력 해야합니다 . 즉, 프로그램을 실행할 때마다 다른 결과를 얻을 수 있습니다.
- 값의 각 가능한 순열은 0이 아닌 확률로 나타나야합니다.
- 모든 원래 키와 원래 값이 결과 배열에 나타나야합니다. 반복되는 값은 결과 배열에서 같은 횟수로 표시되어야합니다.
예를 들어지도가 다음과 같은 경우
[0:10, 1:10, 5:5]
다음이 모두 나타날 가능성이 있어야합니다.
[0:10, 1:10, 5:5] (original map)
[0:10, 1:5, 5:10]
[0:10, 1:10, 5:5] (technically the same map, but I swapped the two tens)
[0:10, 1:5, 5:10]
[0:5, 1:10, 5:10]
[0:5, 1:10, 5:10]
허용되는 입력 / 출력 :
- 모국어 기본 맵
- 키-값 쌍의 배열을 입력 할 수 있습니다. 하나는 키로, 다른 하나는 값으로 2 개의 배열을 입력 할 수 없습니다 .
- 위의 문자열 표현을 사용할 수 있습니다
- 배열이나지도를 입력하면 반환하지 않고 원본 객체를 수정할 수 있습니다
- 입력 유형은 출력 유형과 일치해야합니다.
- 배열을 입력하는 경우 키 순서를 유지해야합니다.
- 키가 고유하다고 가정 할 수 있지만 값이 고유하다고 가정 할 수는 없습니다.
이것은 코드 골프최대한 짧게 답변하십시오.
[k, v]
또는 것 [v, k]
받아 들일 수?
[k, v]