今回も3完でした。
D問題もE問題も難しかった。
もっと基礎を鍛えて解けるようになりたいです。
A問題 Zero Sum Game
#include <iostream>
#include <vector>
template<class T> inline bool chmin(T& a, T b) {
if (a > b) { a = b; return true; }
else return false;
}
template<class T> inline bool chmax(T& a, T b) {
if (a < b) { a = b; return true; }
return false;
}
int main() {
int N;
std::cin >> N;
int sum = 0;
for (int n = 1; n < N; n++) {
int a;
std::cin >> a;
sum += a;
}
std::cout << (0 - sum) << std::endl;
}B問題 Commencement
#include <iostream>
#include <vector>
template<class T> inline bool chmin(T& a, T b) {
if (a > b) { a = b; return true; }
else return false;
}
template<class T> inline bool chmax(T& a, T b) {
if (a < b) { a = b; return true; }
return false;
}
int main() {
std::string S;
std::cin >> S;
std::vector<int> cnt(26, 0);
for (int i = 0; i < S.size(); i++) cnt[S[i] - 'a']++;
std::vector<int> d(S.size()+1, 0);
for (int i = 0; i<cnt.size(); i++) {
d[cnt[i]]++;
}
for (int i = 1; i < d.size(); i++) {
if ((d[i] != 0) && (d[i] != 2)) {
std::cout << "No" << std::endl;
return 0;
}
}
std::cout << "Yes" << std::endl;
}C問題 Airport Code
#include <iostream>
#include <vector>
template<class T> inline bool chmin(T& a, T b) {
if (a > b) { a = b; return true; }
else return false;
}
template<class T> inline bool chmax(T& a, T b) {
if (a < b) { a = b; return true; }
return false;
}
int main() {
std::string S, T;
std::cin >> S >> T;
int idxT = 0;
for (int i = 0; i<S.size(); i++) {
if ((S[i] - 32) == T[idxT]) idxT++;
if (3 <= idxT) {
std::cout << "Yes" << std::endl;
return 0;
}
}
if ((2 <= idxT) && (T[2] == 'X')) {
std::cout << "Yes" << std::endl;
}
else {
std::cout << "No" << std::endl;
}
}D問題 Divide Interval
E問題 Wighted Tic-Tac-Toe




コメント