fork download
  1. #include<bits/stdc++.h>
  2.  
  3. using namespace std;
  4.  
  5. template <typename T> bool maximize(T &res, const T &val){if(res < val) return res = val, true; return false;}
  6. template <typename T> bool minimize(T &res, const T &val){if(res > val) return res = val, true; return false;}
  7.  
  8. #define ll long long
  9. #define fi first
  10. #define se second
  11. #define pb push_back
  12. #define FOR(i, a, b) for(int i = (a), _b = (b); i <= _b; i++)
  13. #define FORD(i, b, a) for(int i = (b), _a = (a); i >= _a; i--)
  14. #define REP(i, n) for(int i = 0, _n = (n); i < _n; i++)
  15. #define C make_pair
  16. #define MASK(i) (1LL << (i))
  17. #define TURN_ON(i, x) ((x) | MASK(i))
  18. #define TURN_OFF(i, x) ((x) & ~MASK(i))
  19. #define RE(i, x) ((x) ^ MASK(i))
  20.  
  21. const ll mod = 1e9 + 7;
  22. const ll INF = 1e15;
  23. const int maxn = 1e5 + 5;
  24. typedef pair<int, int> pi;
  25. typedef pair<int, pair<int,int>> pii;
  26. typedef pair<ll, ll> pl;
  27. typedef pair<ll, pair<ll,ll>>pll;
  28.  
  29. struct edge{
  30. int u,v,w;
  31. edge(int u = 0, int v = 0, int w = 0)
  32. {
  33. this->u = u;
  34. this->v = v;
  35. this->w = w;
  36. }
  37. };
  38. struct matrix{
  39. ll val[3][3];
  40. matrix(){
  41. memset(val, 0, sizeof(val));
  42. }
  43. };
  44.  
  45. int n, k;
  46. ll ans;
  47. vector<int>a[310];
  48. string s;
  49.  
  50. void nhap(){
  51. cin >> n >> k;
  52. FOR(i, 1, n){
  53. cin >> s;
  54. a[s.size()].pb(i);
  55. }
  56. }
  57. void solve(){
  58. FOR(i, 1, 30){
  59. if(a[i].size() <= 1) continue;
  60. REP(j, a[i].size()){
  61. int v = a[i][j], cur = v + k;
  62. int tmp = upper_bound(a[i].begin(), a[i].end(), cur) - a[i].begin();
  63. tmp--;
  64. if(j < tmp) ans += tmp - j;
  65. }
  66. }
  67. cout << ans;
  68. }
  69. int main(){
  70. ios_base::sync_with_stdio(0);
  71. cin.tie(0); cout.tie(0);
  72. nhap();
  73. solve();
  74. return 0;
  75. }
  76.  
Success #stdin #stdout 0s 5288KB
stdin
4  2 
NAA 
MTO 
ANA 
TOM 
stdout
5