A题就是当怪物的数量小于x时,就用群体攻击,大于的时候用单体攻击就可。;
H题,感觉做着题的时候上当了,做了好几遍都没输出,但是提交之后就过了,主要是输入,会输入了再求出现次数最多的那个就可以了,我用的是
char c; c=getchar(); while(c!=EOF) { a[c]++; c=getchar(); }
I题先提前算出每一行的和,每一列的和,输出的时候再用行的和加上列的和减去那个数就是答案;
E题,这题思路有很多,看怎么考虑,但是时间限制的有点难,换了好多思路还是超时,后来看了题解才知道怎么做,创建一个新的字符串,遍历输入的字符串,把新串的最后一个字符和最初的比较,如果相同就消去最后那个,不想同就在末尾加上,(也是我对字符串了解不够)AC代码
#include <iostream> #include <algorithm> #include <queue> #include <vector> using namespace std; typedef long long ll; long long a[28]; int main() { string s; cin >> s; string ans; for(auto &x : s) { if(ans.size() == 0) { ans+=x; continue; } while(ans.size()) { char c = ans[ans.size() - 1]; if(c == x) { ans.pop_back(); break; } else{ ans+=x; break; } } } if(ans.size() == 0)cout << 0 << endl; else cout << ans << endl; return 0; }