C++面向对象程序设计 035:按距离排序 ---- (北大Mooc)
发布日期:2021-06-30 22:27:54 浏览次数:2 分类:技术文章

本文共 1069 字,大约阅读时间需要 3 分钟。

文章目录


专题博客链接


原题题目

在这里插入图片描述

#include 
#include
#include
#include
using namespace std;template
struct Closer {
// 在此处补充你的代码};int Distance1(int n1,int n2) {
return abs(n1-n2);}int Distance2(const string & s1, const string & s2){
return abs((int)s1.length()- (int) s2.length());}int a[10] = {
0,3,1,4,7,9,20,8,10,15};string b[6] = {
"American","Jack","To","Peking","abcdefghijklmnop","123456789"};int main(){
int n;string s; while( cin >> n >> s ) {
sort(a,a+10,Closer
(n,Distance1)); for(int i = 0;i < 10; ++i) cout << a[i] << "," ; cout << endl; sort(b,b+6,Closer
(s,Distance2)); for(int i = 0;i < 6; ++i) cout << b[i] << "," ; cout << endl; } return 0;}

代码实现

private:    T1  n;    T2 func;public:    Closer(T1 n1,T2 func1):n(n1),func(func1){
} bool operator ()(const T1& n1,const T1 & n2) {
int judge1 = func(n1,n); int judge2 = func(n2,n); if(judge1 < judge2 || (judge1 == judge2 && n1 < n2)) return true; else return false; }

转载地址:https://love6.blog.csdn.net/article/details/115026116 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:C++面向对象程序设计 036:很难蒙混过关的CArray3d三维数组模板类 ---- (北大Mooc)
下一篇:C++面向对象程序设计 034:goodcopy ---- (北大Mooc)

发表评论

最新留言

网站不错 人气很旺了 加油
[***.192.178.218]2024年05月04日 16时40分46秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章