#374
Data Fusion
Difficulty: | Medium |
Topics: | Real life cases List of Maps |
Mission: "Data Fusion Expert" menghadapi tantangan untuk menggabungkan informasi dari dua list berbeda yang berisi maps. Setiap map dalam list pertama memiliki keys :id, :x, dan :y, sementara setiap map dalam list kedua memiliki :id, :z, dan :w. Gabungkan dua list tersebut berdasarkan :id yang sama. Untuk setiap pasangan maps dengan :id yang sama, buatlah map baru yang mengandung semua keys dari kedua maps tersebut. Jika ada :id yang tidak memiliki pasangan, abaikan saja.
(= (__ [{:id 1 :x 2 :y 3} {:id 2 :x 4 :y 5}] [{:id 1 :z 6 :w 7} {:id 3 :z 8 :w 9}]) [{:id 1 :x 2 :y 3 :z 6 :w 7}]) | |
(= (__ [{:id 4 :x 10 :y 11}] [{:id 4 :z 12 :w 13} {:id 5 :z 14 :w 15}]) [{:id 4 :x 10 :y 11 :z 12 :w 13}]) | |
(= (__ [] [{:id 1 :z 2 :w 3}]) []) | |
(= (__ [{:id 2 :x 5 :y 6}] [{:id 1 :z 7 :w 8} {:id 2 :z 9 :w 10}]) [{:id 2 :x 5 :y 6 :z 9 :w 10}]) |