1497. Check If Array Pairs Are Divisible by k 給一個int array array裡面 每個數都跟另一個數組隊 兩個數加起來要可以被k整除 每個數(by index)都只能用一次 ## 每個數都%k轉正 先sum起來看看能不能%k check the total number of i equals to k-i n跟k都是1e5 想搜arr或check都行 arr會搜到重複的 check會搜到一堆0== 但是開 map還是比vector慢 應該吧 using ll = long long; class Solution { public: bool canArrange(vector<int>& arr, int k) { ll sum = 0; vector<int> check(k, 0); int mx = k; for(int& i: arr){ i = ((i % k) + k) % k; sum += i; check[i]++; } if(sum % k != 0) return false; cout << "a\n"; if(check[0] % 2) return false; for(int i = 1, j = mx - i; i <= j ; i++, j = mx - i){ if(check[i] != check[j]) return false; } return true; } }; ----- Sent from JPTT on my iPad -- 很姆的咪 姆之咪 http://i.imgur.com/5sw7QOj.jpg
-- ※ 發信站: 批踢踢實業坊(ptt.org.tw), 來自: 123.205.121.194 (臺灣) ※ 文章網址: https://ptt.org.tw/Marginalman/M.1727743757.A.4E8