Submission #1876865
Source Code Expand
#include <iostream> #include <iomanip> // << fixed << setprecision(xxx) #include <algorithm> // do { } while ( next_permutation(A, A+xxx) ) ; #include <vector> #include <string> // to_string(nnn) // substr(m, n) // stoi(nnn) #include <complex> #include <tuple> // get<n>(xxx) #include <queue> #include <stack> #include <map> // if (M.find(key) != M.end()) { } #include <set> // S.insert(M); // if (S.find(key) != S.end()) { } // for (auto it=S.begin(); it != S.end(); it++) { } // auto it = S.lower_bound(M); #include <random> // random_device rd; mt19937 mt(rd()); #include <cctype> #include <cassert> #include <cmath> #include <cstdio> #include <cstdlib> // atoi(xxx) using namespace std; #define DEBUG 0 // change 0 -> 1 if we need debug. // insert #if<tab> by my emacs. #if DEBUG == 1 ... #end typedef long long ll; // const int dx[4] = {1, 0, -1, 0}; // const int dy[4] = {0, 1, 0, -1}; // const int C = 1e6+10; // const ll M = 1000000007; int main () { string S; cin >> S; int x[2]; cin >> x[0] >> x[1]; vector<int> V[2]; bool isx = 0; int cnt = 0; bool isfirst = true; for (auto e : S) { if (e == 'F') cnt++; else { if (isfirst) { x[0] -= cnt; isfirst = false; } else if (cnt > 0) { V[isx].push_back(cnt); } cnt = 0; isx = !isx; } } if (isfirst) { x[0] -= cnt; isfirst = false; } else if (cnt > 0) { V[isx].push_back(cnt); } for (auto k = 0; k < 2; ++k) { int sum = 0; for (auto e : V[k]) { sum += e; } if ((x[k] + sum) %2 != 0) { cout << "No" << endl; return 0; } int mokuhyo = (x[k] + sum)/2; if (mokuhyo < 0 || mokuhyo > sum) { cout << "No" << endl; return 0; } bool dp[10000]; fill(dp, dp+10000, false); dp[0] = true; for (auto e : V[k]) { for (auto i = 9999; i >= 0; --i) { if (dp[i] && i + e < 10000) { dp[i+e] = true; } } } if (!dp[mokuhyo]) { cout << "No" << endl; return 0; } } cout << "Yes" << endl; }
Submission Info
Submission Time | |
---|---|
Task | D - FT Robot |
User | kazunetakahashi |
Language | C++14 (GCC 5.4.1) |
Score | 500 |
Code Size | 2182 Byte |
Status | AC |
Exec Time | 29 ms |
Memory | 256 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 500 / 500 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | 0_00.txt, 0_01.txt, 0_02.txt, 0_03.txt, 0_04.txt, 0_05.txt |
All | 0_00.txt, 0_01.txt, 0_02.txt, 0_03.txt, 0_04.txt, 0_05.txt, 1_00.txt, 1_01.txt, 1_02.txt, 1_03.txt, 1_04.txt, 1_05.txt, 1_06.txt, 1_07.txt, 1_08.txt, 1_09.txt, 1_10.txt, 1_11.txt, 1_12.txt, 1_13.txt, 1_14.txt, 1_15.txt, 1_16.txt, 1_17.txt, 1_18.txt, 1_19.txt, 1_20.txt, 1_21.txt, 1_22.txt, 1_23.txt, 1_24.txt, 1_25.txt, 1_26.txt, 1_27.txt, 1_28.txt, 1_29.txt, 1_30.txt, 1_31.txt, 1_32.txt, 1_33.txt, 1_34.txt, 1_35.txt, 1_36.txt, 1_37.txt, 1_38.txt, 1_39.txt, 1_40.txt, 1_41.txt, 1_42.txt, 1_43.txt, 1_44.txt, 1_45.txt, 1_46.txt, 1_47.txt, 1_48.txt, 1_49.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
0_00.txt | AC | 1 ms | 256 KB |
0_01.txt | AC | 1 ms | 256 KB |
0_02.txt | AC | 1 ms | 256 KB |
0_03.txt | AC | 1 ms | 256 KB |
0_04.txt | AC | 1 ms | 256 KB |
0_05.txt | AC | 1 ms | 256 KB |
1_00.txt | AC | 1 ms | 256 KB |
1_01.txt | AC | 1 ms | 256 KB |
1_02.txt | AC | 1 ms | 256 KB |
1_03.txt | AC | 1 ms | 256 KB |
1_04.txt | AC | 1 ms | 256 KB |
1_05.txt | AC | 1 ms | 256 KB |
1_06.txt | AC | 29 ms | 256 KB |
1_07.txt | AC | 1 ms | 256 KB |
1_08.txt | AC | 20 ms | 256 KB |
1_09.txt | AC | 1 ms | 256 KB |
1_10.txt | AC | 20 ms | 256 KB |
1_11.txt | AC | 1 ms | 256 KB |
1_12.txt | AC | 19 ms | 256 KB |
1_13.txt | AC | 19 ms | 256 KB |
1_14.txt | AC | 15 ms | 256 KB |
1_15.txt | AC | 15 ms | 256 KB |
1_16.txt | AC | 15 ms | 256 KB |
1_17.txt | AC | 15 ms | 256 KB |
1_18.txt | AC | 15 ms | 256 KB |
1_19.txt | AC | 1 ms | 256 KB |
1_20.txt | AC | 15 ms | 256 KB |
1_21.txt | AC | 1 ms | 256 KB |
1_22.txt | AC | 16 ms | 256 KB |
1_23.txt | AC | 8 ms | 256 KB |
1_24.txt | AC | 15 ms | 256 KB |
1_25.txt | AC | 8 ms | 256 KB |
1_26.txt | AC | 1 ms | 256 KB |
1_27.txt | AC | 1 ms | 256 KB |
1_28.txt | AC | 15 ms | 256 KB |
1_29.txt | AC | 1 ms | 256 KB |
1_30.txt | AC | 12 ms | 256 KB |
1_31.txt | AC | 1 ms | 256 KB |
1_32.txt | AC | 8 ms | 256 KB |
1_33.txt | AC | 4 ms | 256 KB |
1_34.txt | AC | 5 ms | 256 KB |
1_35.txt | AC | 1 ms | 256 KB |
1_36.txt | AC | 3 ms | 256 KB |
1_37.txt | AC | 1 ms | 256 KB |
1_38.txt | AC | 2 ms | 256 KB |
1_39.txt | AC | 1 ms | 256 KB |
1_40.txt | AC | 2 ms | 256 KB |
1_41.txt | AC | 2 ms | 256 KB |
1_42.txt | AC | 1 ms | 256 KB |
1_43.txt | AC | 1 ms | 256 KB |
1_44.txt | AC | 1 ms | 256 KB |
1_45.txt | AC | 1 ms | 256 KB |
1_46.txt | AC | 10 ms | 256 KB |
1_47.txt | AC | 1 ms | 256 KB |
1_48.txt | AC | 1 ms | 256 KB |
1_49.txt | AC | 1 ms | 256 KB |