[NOIP2010]数字统计(简单)(枚举,数字拆分)
[NOIP2010]数字统计_牛客题霸_牛客网 (nowcoder.com)
描述
请统计某个给定范围[L, R]的所有整数中,数字2出现的次数。
比如给定范围[2, 22],数字2在数2中出现了1次,在数12中出现1次,在数20中出现1次,在数21中出现1次,在数22中出现2次,所以数字2在该范围内一共出现了6次。
输入描述:
输入共1行,为两个正整数L和R,之间用一个空格隔开。
输出描述:
输出共1行,表示数字2出现的次数。
示例1
输入:
2 22
输出:
6
示例2
输入:
2 100
输出:
20
备注:
1≤L≤R≤10000。
NC313 两个数组的交集(简单)(哈希)
两个数组的交集_牛客题霸_牛客网 (nowcoder.com)
描述
给定两个整数数组分别为𝑛𝑢𝑚𝑠1num**s1, 𝑛𝑢𝑚𝑠2num**s2,找到它们的公共元素并按返回。
数据范围:
1≤𝑛𝑢𝑚𝑠1.𝑙𝑒𝑛𝑔𝑡ℎ,𝑛𝑢𝑚𝑠2.𝑙𝑒𝑛𝑔𝑡ℎ≤10001≤num**s1.lengt**h,num**s2.lengt**h≤1000
1≤𝑛𝑢𝑚𝑠1[𝑖],𝑛𝑢𝑚𝑠2[𝑖]≤10001≤num**s1[i],num**s2[i]≤1000
示例1
输入:
[1,2 ],[2,2,2,2]
返回值:
[2]
说明:
两个数组的公共元素只有2
示例2
输入:
[1,2,3],[8,2,2,3,8]
返回值:
[2,3]
说明:
两个数组的公共元素为2和3,返回[3,2]也是一个正确的答案
AB5 点击消除(简单)(栈)
描述
牛牛拿到了一个字符串。
他每次“点击”,可以把字符串中相邻两个相同字母消除,例如,字符串"abbc"点击后可以生成"ac"。
但相同而不相邻、不相同的相邻字母都是不可以被消除的。
牛牛想把字符串变得尽可能短。他想知道,当他点击了足够多次之后,字符串的最终形态是什么?
输入描述:
一个字符串,仅由小写字母组成。(字符串长度不大于300000)
输出描述:
一个字符串,为“点击消除”后的最终形态。若最终的字符串为空串,则输出0。
示例1
输入:
abbc
输出:
ac
示例2
输入:
abba
输出:
0
示例3
输入:
bbbbb
输出:
b
代码
#include <iostream>
#include <string>
using namespace std;
int main()
{
string s, st;
cin >> s;
for (auto ch : s)
if (st.size() && st.back() == ch)st.pop_back();
else st += ch;
if(st.empty()) cout<<0<<endl;
cout << st << endl;
}