当前位置:网站首页>Niuke.com - Huawei Question Bank (100~108)
Niuke.com - Huawei Question Bank (100~108)
2022-07-30 19:21:00 【wrdoct】
华为题库
100.等差数列
#include <bits/stdc++.h>
using namespace std;
#define a1 2
#define d 3
int main(){
int n = 0;
while(cin >> n){
int res = 0;
int an = a1 + (n - 1) * d;
res = (a1 + an) * n / 2;
cout << res << endl;
}
return 0;
}
101.输入整型数组和排序标识,对其元素按照升序或降序进行排序
#include <bits/stdc++.h>
using namespace std;
struct cmp_0{
bool operator()(const int& a, const int& b){
return a < b;
}
};
bool cmp_1(const int& a, const int& b){
return a > b;
}
int main(){
int n = 0;
while(cin >> n){
vector<int> nums(n,0);
for(int i = 0; i < n; i++){
int num = 0;
cin >> num;
nums[i] = num;
}
int m = 0;
cin >> m;
if(m == 0){
//升序
sort(nums.begin(), nums.end(), cmp_0());
for(int i = 0; i < n; i++){
cout << nums[i] << " ";
}
cout << endl;
}
else if(m == 1){
//降序
sort(nums.begin(), nums.end(), cmp_1);
for(int i = 0; i < n; i++){
cout << nums[i] << " ";
}
cout << endl;
}
}
}
102.字符统计
#include <iostream>
#include <string>
#include <map>
#include <vector>
#include <algorithm>
using namespace std;
bool cmp(const pair<char, int> & a, const pair<char, int> & b) {
if(a.second == b.second){
return a.first < b.first;
}
return a.second > b.second;
}
struct cmp1{
bool operator()(const pair<char, int> & a, const pair<char, int> & b){
if(a.second == b.second){
return a.first < b.first;
}
return a.second > b.second;
}
};
int main(){
string s = "";
while(getline(cin, s)){
map<char, int> m;
for(char ch : s){
m[ch]++;
}
vector<pair<char, int>> v(m.begin(), m.end()); //
//sort(v.begin(), v.end(), cmp;
//stable_sort(v.begin(), v.end(), cmp1());
//因为map已经依照键排序了,所以用稳定排序当次数一样时,会保持原来的先后关系,即ASCII码的升序
stable_sort(v.begin(), v.end(), [](const pair<char,int>& a,const pair<char,int>& b){
//用Lambda来写配合算法使用的小函数是非常方便的
return a.second>b.second;
});
for(auto iter : v){
cout << iter.first;
}
cout << endl;
}
return 0;
}
103.Redraiment的走法
#include <bits/stdc++.h>
using namespace std;
int main(){
int n = 0;
while(cin >> n){
vector<int> nums(n, 0);
for(int i = 0; i < n; i++){
int num = 0;
cin >> num;
nums[i] = num;
}
vector<int> dp(n, 1); //dp[i]表示以nums[i]is the length of the ending strictly ascending subsequence(初始化为1)
int res = 1;
for(int i = 0; i < nums.size(); i++){
for(int j = 0; j < i; j++){
//遍历前面的
if(nums[j] < nums[i]){
//ensure strict ascent
dp[i] = max(dp[i], dp[j] + 1); //
}
}
res = max(res, dp[i]); //维护最大值
}
cout << res << endl;
}
return 0;
}
105.记负均正II
#include<bits/stdc++.h>
using namespace std;
int main(){
int num = 0;
double sum = 0, ave = 0;
int posNum = 0;
int negNum = 0;
while(cin >> num){
if(num < 0){
negNum++;
}
else{
posNum++;
sum += num;
}
if(posNum != 0) ave = sum / posNum;
}
cout << negNum << endl;
printf("%.1lf\n", ave);
}
106.字符逆序
#include <bits/stdc++.h>
using namespace std;
void process(string str, string& res){
reverse(str.begin(), str.end());
res = str;
}
int main(){
string str = "";
while(getline(cin, str)){
string res = "";
process(str, res);
cout << res << endl;
}
return 0;
}
107.求解立方根
#include <bits/stdc++.h>
using namespace std;
double cal(double x){
//正负数都有
double l = min(-1.0, x);
double r = max(1.0, x);
double y;
while(abs(r - l) > 0.01){
//立方根的精度值
y = (l + r) / 2;
if(y*y*y > x){
//
r = y;
}
else{
l = y;
}
}
return y;
}
int main(){
double num = 0.0;
while(cin >> num){
//cout << setprecision(1) << fixed << cal(num) << endl; //控制小数位输出
printf("%.1lf", cal(num));
}
return 0;
}
108.求最小公倍数
#include<bits/stdc++.h>
using namespace std;
int main(){
int A = 0, B = 0;
while(cin >> A >> B){
int tmp = A * B;
for(int i = min(A, B); i <= tmp; i++){
if(i % A == 0 && i % B == 0){
cout << i << endl;
break;
}
}
}
}
边栏推荐
猜你喜欢

MindSpore:【JupyterLab】按照新手教程训练时报错

技术很牛逼,还需要“向上管理”吗?

Critical Reviews | A review of the global distribution of antibiotics and resistance genes in farmland soil by Nannong Zou Jianwen's group

第十七届“振兴杯”全国青年 职业技能大赛——计算机程序设计员(云计算平台与运维)参赛回顾与总结
![[Summary] 1396- 60+ VSCode plugins to create a useful editor](/img/e4/65e55d0e4948c011585b72733d4d19.jpg)
[Summary] 1396- 60+ VSCode plugins to create a useful editor

经济新闻:错误# 15:初始化libiomp5md。dll,但发现libiomp5md。已经初始化dll。解决方法

C# wpf 无边框窗口添加阴影效果

来了!东方甄选为龙江农产品直播带货

【MindSpore1.2.0-rc1产品】num_workers问题

谷歌AlphaFold近日宣称预测出地球上几乎所有蛋白质结构
随机推荐
几个GTest、GMock的例子
【每日一道LeetCode】——191. 位1的个数
The large-scale application of artificial intelligence AI products in industrial-grade mature shipping ports of CIMC World Lianda will create a new generation of high-efficiency smart ports and innova
Witness the magical awakening of the mini world in HUAWEI CLOUD
【刷题篇】计算质数
卫星电话是直接与卫星通信还是通过地面站?
Go system collection
Common linked list problems and their Go implementation
自己需要努力
Recommendation | People who are kind to you, don't repay them by inviting them to eat
MYSQL(基本篇)——一篇文章带你走进MYSQL的奇妙世界
OneFlow source code analysis: Op, Kernel and interpreter
How architects grow
[Summary] 1396- 60+ VSCode plugins to create a useful editor
[Prometheus] An optimization record of the Prometheus federation [continued]
kotlin的by lazy
AI Basics: Graphical Transformer
【Prometheus】Prometheus联邦的一次优化记录[续]
Alibaba Cloud Martial Arts Headline Event Sharing
iPhone真是十三香?两代产品完全对比,或许上一代更值得买