
华为社招笔试
发布日期:2021-05-09 00:19:59
浏览次数:15
分类:博客文章
本文共 1870 字,大约阅读时间需要 6 分钟。
输入10个整数,从中选出3个,使得x^2+xy-y^2+z的值最小.
例子:
输入: 1 3 1 1 1 1 1 1 1 1
输出:-4
//最初版本:比较傻的版本.
#include#include #include using namespace std;int main(){ int a1, a2, a3, a4, a5, a6, a7, a8, a9, a10; while (cin >> a1 >> a2 >> a3 >> a4 >> a5 >> a6 >> a7 >> a8 >> a9 >> a10) { int arr[10] = { a1, a2, a3, a4, a5, a6, a7, a8, a9, a10 }; vector vecInt(arr, arr+10); vector vecRes; for (int i = 0; i < vecInt.size(); i++) { for (int j = 0; j < vecInt.size(); j++) { for (size_t k = 0; k < vecInt.size(); k++) { if (i != j && j != k && k != i) { int x = vecInt[i]; int y = vecInt[j]; int z = vecInt[k]; int result = x*x+x*y-y*y+z; vecRes.push_back(result); } else { } } } } sort(vecRes.begin(), vecRes.end()); cout << vecRes[0]; } return 0;}
//对输入进行优化
#include#include #include #include using namespace std;int main(){ int num; vector vecInt; while (cin >>num) //如果一行输入多个数,windows下Ctrl+Z会终止输入. { vecInt.push_back(num); } vector vecRes; for (int i = 0; i < vecInt.size(); i++) { for (int j = 0; j < vecInt.size(); j++) { for (size_t k = 0; k < vecInt.size(); k++) { if (i != j && j != k && k != i) { int x = vecInt[i]; int y = vecInt[j]; int z = vecInt[k]; int result = x*x + x*y - y*y + z; vecRes.push_back(result); } else { } } } } sort(vecRes.begin(), vecRes.end()); cout << vecRes[0]; return 0;}
发表评论
最新留言
做的很好,不错不错
[***.243.131.199]2025年04月23日 19时41分20秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Python数据分析入门(十九):绘制散点图
2019-03-14
大佬谈接口自动化,我是这样做测试框架开发的……
2019-03-14
C++版浙大PAT乙级1069(20分)测试点3答案错误解决方法
2019-03-14
浏览器刷新页面
2019-03-14
easyui日期处理(开始时间和结束时间)
2019-03-14
java文件上传
2019-03-14
Callable中call方法和Runnable中run方法的区别
2019-03-14
超市账单管理系统
2019-03-14
Springboot实现热部署
2019-03-14
需求分析
2019-03-14
查找单链表中倒数第k个节点
2019-03-14
创建组出现错误:对COM组件的调用返回了错误 HRESULT E_FAIL。小敏
2019-03-14
Linux yum提示Loaded plugins错误的解决方法
2019-03-14
Netty的体系结构及使用
2019-03-14
xshell解决文本粘贴格式错误
2019-03-14
什么是证券型代币?
2019-03-14
Android中获取并设置屏幕亮度
2019-03-14
Windows抓包工具-Fiddler
2019-03-14
Swift中使用DispatchGroup分组管理异步任务
2019-03-14