目录

知识点:格式化输出,%m.ns

知识点:

易错点:条件判断位置出现赋值语句时,不要错想成等式判断;赋值语句的值为等号右边的值

知识点:

题目链接:https://www.nowcoder.com/questionTerminal/248ccf8b479c49a98790db17251e39bb
思路:把数组排序,每次都去一个最小的和两个最大的为一组
- #include
- #include
- #include
- using namespace std;
-
- int main()
- {
- int grp;
- cin >> grp;
- int n = 3 * grp;
- vector<int> arr;
- arr.resize(n);
- for (int i = 0; i < n; i++)
- {
- //arr未提前申请空间时,应使用尾插
- /*int num;
- cin >> num;
- arr.push_back(num);*/
- cin >> arr[i];
- }
- //参数为迭代器
- sort(arr.begin(), arr.end());
- //防止求和溢出
- long long sum = 0;
- for (int i = 0; i < grp; i++)
- {
- sum += arr[n - 2 * (i + 1)];
- }
- cout << sum << endl;
- return 0;
- }

题目链接:https://www.nowcoder.com/practice/f0db4c36573d459cae44ac90b90c6212?tpId=182&tqId=34789&ru=/exam/oj
思路:创建一个哈希数组,记录第二个字符串的每个字符的出现,然后遍历第一个字符串的同时检查哈希数组,输出答案
- #include
- #include
- using namespace std;
-
- int main()
- {
- string str1,str2;
- getline(cin,str1);
- getline(cin,str2);
-
- int hash[128]={0};
- for(auto c:str2)
- {
- hash[c]++;
- }
- for(auto c:str1)
- {
- if(hash[c]!=0)
- continue;
- else
- cout<
- }
- //cout<
- return 0;
- }