Loading...
Submission
# When Author Problem Language CPU Memory
5577 2022-08-19 18:12:44 ShajibEwuCse19 Min Substring C++ 17 4 ms 3552 kb Wrong Answer - 5
Test Cases
# CPU Memory Points
1 4 ms 3464 kb 1 Accepted
2 3 ms 3540 kb 1 Accepted
3 3 ms 3388 kb 1 Accepted
4 3 ms 3540 kb 1 Accepted
5 3 ms 3552 kb 0 Wrong Answer
6 0 ms 0 kb 0 Skipped
7 0 ms 0 kb 0 Skipped
8 0 ms 0 kb 0 Skipped
9 0 ms 0 kb 0 Skipped
10 0 ms 0 kb 0 Skipped
11 0 ms 0 kb 0 Skipped
12 0 ms 0 kb 0 Skipped
13 0 ms 0 kb 0 Skipped
14 0 ms 0 kb 0 Skipped
15 0 ms 0 kb 0 Skipped
16 0 ms 0 kb 0 Skipped
17 0 ms 0 kb 0 Skipped
18 0 ms 0 kb 0 Skipped
Source Code
  1. //Md. Shajibul Islam..
  2. //East West University, CSE Department'19
  3.  
  4. #include<bits/stdc++.h>
  5. using namespace std;
  6.  
  7. typedef long long ll;
  8. typedef vector<int> vi;
  9. typedef vector<ll> vl;
  10. typedef vector<vi> vvi;
  11. typedef vector<vl> vvl;
  12. typedef pair<int,int> pii;
  13. typedef pair<double, double> pdd;
  14. typedef pair<ll, ll> pll;
  15. typedef vector<pii> vii;
  16. typedef vector<pll> vll;
  17. typedef vector<int>::iterator vit;
  18. typedef set<int>::iterator sit;
  19.  
  20. #define FAST ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0)
  21. #define endl '\n'
  22. #define loop(i,n) for(int i=0;i<n;i++)
  23. #define CASE_PRINT cout<<"Case "<<C<<": "
  24. #define CASE_PRINT2 cout<<"Case "<<C<<":"<<endl
  25. #define ll long long
  26. #define ld long double
  27. #define Pi 2*acos(0.0) // acos(-1.0)
  28. #define err 1e-9
  29.  
  30. #define PB push_back
  31. #define F first
  32. #define S second
  33. #define MP make_pair
  34. #define all(a) (a).begin(),(a).end()
  35. #define mid(l,r) ((r+l)/2)
  36. #define left(node) (node*2)
  37. #define right(node) (node*2+1)
  38. #define mx_int_prime 999999937
  39. #define mem(a,b) memset(a, b, sizeof(a) )
  40. #define gcd(a,b) __gcd(a,b)
  41. #define sqr(a) ((a) * (a))
  42.  
  43.  
  44. template < typename F, typename S >
  45. ostream& operator << ( ostream& os, const pair< F, S > & p ) {
  46. return os << "(" << p.first << ", " << p.second << ")";
  47. }
  48.  
  49. template < typename T >
  50. ostream &operator << ( ostream & os, const vector< T > &v ) {
  51. os << "{";
  52. for(auto it = v.begin(); it != v.end(); ++it) {
  53. if( it != v.begin() ) os << ", ";
  54. os << *it;
  55. }
  56. return os << "}";
  57. }
  58.  
  59. template < typename T >
  60. ostream &operator << ( ostream & os, const set< T > &v ) {
  61. os << "[";
  62. for(auto it = v.begin(); it != v.end(); ++it) {
  63. if( it != v.begin() ) os << ", ";
  64. os << *it;
  65. }
  66. return os << "]";
  67. }
  68.  
  69. template < typename T >
  70. ostream &operator << ( ostream & os, const multiset< T > &v ) {
  71. os << "[";
  72. for(auto it = v.begin(); it != v.end(); ++it) {
  73. if( it != v.begin() ) os << ", ";
  74. os << *it;
  75. }
  76. return os << "]";
  77. }
  78.  
  79. template < typename F, typename S >
  80. ostream &operator << ( ostream & os, const map< F, S > &v ) {
  81. os << "[";
  82. for(auto it = v.begin(); it != v.end(); ++it) {
  83. if( it != v.begin() ) os << ", ";
  84. os << it -> first << " = " << it -> second ;
  85. }
  86. return os << "]";
  87. }
  88.  
  89. #define dbg(args...) do {cerr << #args << " : "; faltu(args); } while(0)
  90.  
  91. void faltu () {
  92. cerr << endl;
  93. }
  94.  
  95. template <typename T>
  96. void faltu( T a[], int n ) {
  97. for(int i = 0; i < n; ++i) cerr << a[i] << ' ';
  98. cerr << endl;
  99. }
  100.  
  101. template <typename T, typename ... hello>
  102. void faltu( T arg, const hello &... rest) {
  103. cerr << arg << ' ';
  104. faltu(rest...);
  105. }
  106.  
  107. const double PI = acos(-1.0);
  108. const double eps = 1e-9;
  109. const int inf = 2000000000;
  110. const ll infLL = 9000000000000000000;
  111. #define MOD 1000000007
  112. int dx[] = {0, 0, +1, -1, +1, +1, -1, -1};
  113. int dy[] = {+1, -1, 0, 0, +1, -1, +1, -1};
  114.  
  115. const int mx = 1e5+123;
  116.  
  117. int main()
  118. {
  119. string s;cin>>s;
  120. set<char>st;
  121. for(auto i : s)st.insert(i);
  122. int total = st.size();
  123. int l=0, r=0, len=1e9;
  124. st.clear();
  125.  
  126. int strlen = (int)s.size();
  127. for(int i=1; i<strlen and l<strlen and r<strlen; i++)
  128. {
  129. if(s[l] == s[i] and i==l+1){l++;r++;st.insert(s[i]);}
  130. else
  131. {
  132. r++;
  133. st.insert(s[i]);
  134. }
  135.  
  136. if(st.size() == total)
  137. {
  138. len = min(len,(r-l+1));
  139. l = i+1;
  140. r = i+1;
  141. st.clear();
  142. }///dbg(l,r,st.size());
  143. }
  144.  
  145. cout<<len<<endl;
  146. }
  147.  
  148.  
  149.