Submission #1493933
Source Code Expand
#include "iostream" #include "climits" #include "list" #include "queue" #include "stack" #include "set" #include "functional" #include "algorithm" #include "string" #include "map" #include "iomanip" using namespace std; const long long int MOD = 1000000007; long long int power(long long int x, long long int n, long long int M) { long long int tmp = 1; if (n > 0) { tmp = power(x, n / 2, M); if (n % 2 == 0) tmp = (tmp*tmp) % M; else tmp = (((tmp*tmp) % M)*x) % M; } return tmp; } long long int N, M, K, Q, W, H, L, R; long long int ans; class Segment_Tree { vector<long long int>v; vector<int>l; vector<int>r; int num; long long int ret; bool is_min; long long int Update(int place) { if (place >= (int)v.size() / 2) { return v[place]; } if (is_min) { v[place] = min(Update(place * 2), Update(place * 2 + 1)); return v[place]; } v[place] = max(Update(place * 2), Update(place * 2 + 1)); return v[place]; } void RMQ(int a, int b, int place) { if (l[place] >= a&&r[place] <= b) { if (is_min)ret = min(ret, v[place]); else ret = max(ret, v[place]); return; } if (l[place]>b || r[place]<a) return; RMQ(a, b, place * 2); RMQ(a, b, place * 2 + 1); return; } public: void Left(int place) { if (place >= (int)v.size() / 2) { l[place] = place - v.size() / 2; return; } Left(place * 2); Left(place * 2 + 1); l[place] = l[place * 2]; return; } void Right(int place) { if (place >= (int)v.size() / 2) { r[place] = place - v.size() / 2; return; } Right(place * 2); Right(place * 2 + 1); r[place] = r[place * 2 + 1]; return; } Segment_Tree(int n, bool min) { num = 1; while (num < n * 2) { num *= 2; } l.resize(num); r.resize(num); if (min) { v.resize(num, LLONG_MAX); is_min = true; } else v.resize(num, LLONG_MIN); Left(1); Right(1); } void Insert(int place, long long int num, bool update) { place += v.size() / 2; v[place] = num; if (!update)return; place /= 2; while (place) { if (is_min)v[place] = min(v[place * 2], v[place * 2 + 1]); else v[place] = max(v[place * 2], v[place * 2 + 1]); place /= 2; } } void TopDown() { Update(1); } long long int RMQ(int a, int b) { if (is_min)ret = LLONG_MAX; else ret = LLONG_MIN; RMQ(a, b, 1); return ret; } }; int main() { ios::sync_with_stdio(false); string s; cin >> N; cin >> s; for (int i = 0; i < N; i++) { if (s[i] == 'X') { M++; if (M % 3 == 0)ans++; } else M = 0; } cout << ans << endl; return 0; }
Submission Info
Submission Time | |
---|---|
Task | B - 雨上がり |
User | olphe |
Language | C++14 (GCC 5.4.1) |
Score | 50 |
Code Size | 2671 Byte |
Status | AC |
Exec Time | 1 ms |
Memory | 256 KB |
Judge Result
Set Name | All | ||
---|---|---|---|
Score / Max Score | 50 / 50 | ||
Status |
|
Set Name | Test Cases |
---|---|
All | case_000.txt, case_001.txt, case_002.txt, case_003.txt, case_004.txt, case_005.txt, case_006.txt, case_007.txt, case_008.txt, case_009.txt, case_010.txt, case_011.txt, case_012.txt, case_013.txt, case_014.txt, case_015.txt, case_016.txt, case_017.txt, case_018.txt, case_019.txt, case_020.txt, case_021.txt, case_022.txt, case_023.txt, case_024.txt, case_025.txt, case_026.txt, case_027.txt, case_028.txt, case_029.txt, case_030.txt, case_031.txt, case_032.txt, case_033.txt, case_034.txt, case_035.txt, case_036.txt, case_037.txt, case_038.txt, case_039.txt, case_040.txt, case_041.txt, case_042.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
case_000.txt | AC | 1 ms | 256 KB |
case_001.txt | AC | 1 ms | 256 KB |
case_002.txt | AC | 1 ms | 256 KB |
case_003.txt | AC | 1 ms | 256 KB |
case_004.txt | AC | 1 ms | 256 KB |
case_005.txt | AC | 1 ms | 256 KB |
case_006.txt | AC | 1 ms | 256 KB |
case_007.txt | AC | 1 ms | 256 KB |
case_008.txt | AC | 1 ms | 256 KB |
case_009.txt | AC | 1 ms | 256 KB |
case_010.txt | AC | 1 ms | 256 KB |
case_011.txt | AC | 1 ms | 256 KB |
case_012.txt | AC | 1 ms | 256 KB |
case_013.txt | AC | 1 ms | 256 KB |
case_014.txt | AC | 1 ms | 256 KB |
case_015.txt | AC | 1 ms | 256 KB |
case_016.txt | AC | 1 ms | 256 KB |
case_017.txt | AC | 1 ms | 256 KB |
case_018.txt | AC | 1 ms | 256 KB |
case_019.txt | AC | 1 ms | 256 KB |
case_020.txt | AC | 1 ms | 256 KB |
case_021.txt | AC | 1 ms | 256 KB |
case_022.txt | AC | 1 ms | 256 KB |
case_023.txt | AC | 1 ms | 256 KB |
case_024.txt | AC | 1 ms | 256 KB |
case_025.txt | AC | 1 ms | 256 KB |
case_026.txt | AC | 1 ms | 256 KB |
case_027.txt | AC | 1 ms | 256 KB |
case_028.txt | AC | 1 ms | 256 KB |
case_029.txt | AC | 1 ms | 256 KB |
case_030.txt | AC | 1 ms | 256 KB |
case_031.txt | AC | 1 ms | 256 KB |
case_032.txt | AC | 1 ms | 256 KB |
case_033.txt | AC | 1 ms | 256 KB |
case_034.txt | AC | 1 ms | 256 KB |
case_035.txt | AC | 1 ms | 256 KB |
case_036.txt | AC | 1 ms | 256 KB |
case_037.txt | AC | 1 ms | 256 KB |
case_038.txt | AC | 1 ms | 256 KB |
case_039.txt | AC | 1 ms | 256 KB |
case_040.txt | AC | 1 ms | 256 KB |
case_041.txt | AC | 1 ms | 256 KB |
case_042.txt | AC | 1 ms | 256 KB |