Task: | Merkkijonot |
Sender: | intoo |
Submission time: | 2019-09-30 11:26:20 +0300 |
Language: | C++ (C++17) |
Status: | COMPILE ERROR |
Compiler report
input/code.cpp: In function 'int main()': input/code.cpp:20:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (int i = 0; i < s.size(); i++) { ~~^~~~~~~~~~ input/code.cpp:24:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (int i = 0; i < m.size(); i++) { ~~^~~~~~~~~~ input/code.cpp:26:14: error: '__gnu_cxx::__alloc_traits<std::allocator<std::pair<std::vector<int>, int> > >::value_type {aka struct std::pair<std::vector<int>, int>}' has no member named 'push_back' else m[i].push_back({z, 1}); ^~~~~~~~~ input/code.cpp:29:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (int i = 0; i < m.size(); i++) { ~~^~~~~~~~~~ input/code.cpp:31:12: error: no match for 'operator-' (operand types are 'std::vector<std::pair<std::vector<int>, int> >' and 'int') c += m*(m-1)/2; ~^~...
Code
#include <iostream>#include <vector>#include <set>using namespace std;int t[101010][26];vector<pair<vector<int>, int>> m;//multiset<vector<int>> m;int main() {int n, c = 0;cin >> n;string s;for (int k = 0; k < n; k++) {cin >> s;vector<int> z;int x = 1;for (int i = 0; i < s.size(); i++) {if (!t[k][s[i]-65]) t[k][s[i]-65] = x++;z.push_back(t[k][s[i]-65]);}for (int i = 0; i < m.size(); i++) {if (m[i].first == z) m[i].second++;else m[i].push_back({z, 1});}}for (int i = 0; i < m.size(); i++) {int n = m[i].second;c += m*(m-1)/2;}cout << c << endl;}