感动要哭 撸了一个半小时的重载预算符高精

撸了一个半小时代码,没玩守望(垃圾游戏毁我青春五个金牌都带不起队友)最后编译出312个错误。吓我,然而改了几个地方就直接过了直接过了直接过了,目前还是不明白ostream,istream的用处,上网才搞定的。只写了加与乘还有比较。其他后面加吧。减法跟除都很恶心。。。。

代码如下:

 1 #include<iostream>
 2 #include<cstdio>
 3 #include<cstring>
 4 #include<algorithm>
 5 #define maxn 5000
 6 using namespace std;
 7 struct SPH{
 8     int len,s[maxn];
 9     SPH(){
10         memset(s,0,sizeof(s));
11         len=1;
12     }
13     SPH operator = (const char* num)
14     {
15         len=strlen(num);
16         for(int i=0;i<len;++i) s[i]=num[len-i-1]-48;
17         return *this;
18     }
19     SPH operator=(const int num){
20         char a[maxn];
21         sprintf(a,"%d",num);
22         *this=a;
23         return *this;
24     }
25     SPH (const int num){ *this=num;
26     }
27     SPH (const char * num){ *this=num;
28     }
29     SPH operator+(const SPH & a)
30     {
31         SPH c;
32         c.len=max(len,a.len)+1;
33         int x=0;
34         for(int i=0;i<c.len;++i)
35         {
36             c.s[i]=s[i]+a.s[i]+x;
37             x=c.s[i]/10;
38             c.s[i]=c.s[i]%10;
39         }
40         if(c.s[c.len-1]==0) --c.len;
41         return c;
42     }
43     SPH operator+=(const SPH & a){
44         *this=*this+a;
45         return *this;
46     }
47     SPH operator*(const SPH & x){
48         SPH c;
49         c.len=len+x.len;
50         for(int i=0;i<len;++i){
51             for(int j=0;j<x.len;++j){
52                 c.s[i+j]+=s[i]*x.s[j];
53                 c.s[i+j+1]+=c.s[i+j]/10;
54                 c.s[i+j]%=10;
55             }
56             
57         }
58         if(c.len-1) --c.len;
59         return c;    }
60     SPH operator *=(const SPH & a){
61         *this=*this * a;
62         return *this;
63     }
64     bool operator < (const SPH & x) const{
65     if(len !=x.len) return len<x.len;
66     for(int i=len-1;i>=0;i--){
67         if(s[i]!=x.s[i]) return s[i]<x.s[i];
68     }
69     return false;}
70     bool operator >(const SPH & x) const {return x<*this;}
71     bool operator <=(const SPH & x) const {return !(x<*this);}
72     bool operator >=(const SPH & x) const {return !(x>*this);}
73     bool operator ==(const SPH & x) const {return !(x<*this||x>*this);}
74     bool operator !=(const SPH & x) const {return x<*this||x>*this;}
75     };
76     ostream& operator << (ostream &out,const SPH& x){
77         for(int i=x.len-1;i>=0;i--)
78         cout<<x.s[i];
79         return out;
80     }
81     istream& operator >> (istream &in,SPH& x)
82     {
83         char num[maxn];
84         in>>num;
85         x=num;
86         return in;
87     }
88 
89 int main()
90 {
91     SPH n,m,sum;
92     cin>>n>>m;
93     sum=n+m;
94     cout<<sum<<" ";
95     sum=n*m;
96     cout<<sum;
97     return 0;
98 }

 

转载于:https://www.cnblogs.com/srpihot/p/6379910.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/255429.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LVDS DP等显示器接口简介

LVDS 产品传输速率从几百Mbps到2Gbps。它是电流驱动的&#xff0c;他通过在接收端放置一个负载而得到的电压&#xff0c;当电流正向流动&#xff0c;接收端输出为1&#xff0c;反之为0&#xff0c;它的摆幅250mV-450mV. lvds 即低压差分信号传输&#xff0c;是一种满足高性能传…

http协议相关内容

二、HTTP协议1、协议&#xff1a;共同遵守的规则。2、网络协议有&#xff1a;TCP&#xff08;有三次握手机制&#xff09;/IP&#xff1a;传输控制协议/地址协议&#xff0c;SMTP&#xff1a;简单邮件传输协议&#xff0c;FTP&#xff1a;文件传输协议&#xff0c;http&#xf…

使用XmlTextReader 读取XML

XmlTextReader 限于只向前的读取 XmlTextReader 的技术类似于读取其他任何文件 首先打开文件&#xff0c;然后从文件中读取信息,最后关闭文件. 每次从文件中读取信息时&#xff0c;他在文件中的位置都会前移.到达文件结尾的时候就什么都不读了。 1 创建XmlTextReader对象 …

C#中ComboBox动态绑定赋值

http://www.crifan.com/csharp_combobox_data_dynamic_binding/ C#中&#xff0c;已有一个List&#xff0c;想要动态的&#xff0c;绑定到ComboBox中。 【解决过程】 1.参考&#xff1a; c# winform comboBox动态绑定数据 去试试代码&#xff1a; cmbSubCategory.DataSource g…

【pyqt5学习】——日历控件calendarWidget设置单元格格式(前景、背景)、日历控件属性编辑

目录 0、导入库 1、返回日历选中的日期 2、更改日历控件周几&#xff08;比如一个月属于周一的日期&#xff09;的所有格子属性 3、更改日历控件单个格子&#xff08;指定日期&#xff09;属性 4、日历格子属性 5、信号——clicked() 6、成果展示 0、导入库 from PyQt5.Q…

linux内核数据结构之链表

1、前言 最近写代码需用到链表结构&#xff0c;正好公共库有关于链表的。第一眼看时&#xff0c;觉得有点新鲜&#xff0c;和我之前见到的链表结构不一样&#xff0c;只有前驱和后继指针&#xff0c;而没有数据域。后来看代码注释发现该代码来自linux内核&#xff0c;在linux源…

为什么使用 XML

为什么使用 XML&#xff1f; Web 使我们能够与任何地方的任何人通讯。广泛接受的标准&#xff08;这对完全使用 Web 的潜力是至关重要的&#xff09;允许 Web 在多种交互操作的技术层上通讯。一个重要层是可视化显示和用户界面&#xff0c;例如 HTML、GIF 和 JScript(TM) 之类的…

bzoj1084: [SCOI2005]最大子矩阵

dp。转移方程在代码里。。转载于:https://www.cnblogs.com/invoid/p/5451202.html

ci事务

参考链接:http://www.tuicool.com/articles/jqeuU3转载于:https://www.cnblogs.com/norm/p/6382396.html

【bug修复】you must feed a value for placeholder tensor ‘Placeholder‘ with dtype float解决方案

最近碰到了这个you must feed a value for placeholder tensor Placeholder with dtype float and shape的问题&#xff0c;字面意思很好理解&#xff0c;就是没有给Placeholder赋值&#xff0c;可是我明明赋值了&#xff0c;百度了许多&#xff0c;也都是让我检查是否赋值以及…

动态代理3之代理工厂实现

动态代理的深化&#xff1a;承接动态代理2( 对 上级实例进行 深化)&#xff0c;也就是 spring 的前身 &#xff08;必须掌握&#xff09;实例&#xff1a; 文件说明&#xff1a;1.有一个Waiter接口&#xff0c;该接口有一个 server() 、ShouQian()方法 2.有一个 Waiter接口的实…

一个简单的XML文档例子

一个简单的XML文档例子: <?xml version"1.0"?> <note> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Dont forget me this weekend!</body> </note> 文档的第一…

python set

python的set和其他语言类似, 是一个无序不重复元素集, 基本功能包括关系测试和消除重复元素. 集合对象还支持union(联合), intersection(交), difference(差)和sysmmetric difference(对称差集)等数学运算. sets 支持 x in set, len(set),和 for x in set。作为一个无序的集…

【bug修复】解决ValueError: Tensor(“Variable:0“ dtype=float32_ref) must be from the same graph as Tensor(“R

bug:描述 在进行tensorflow进行搭建CNN网络时&#xff0c;在定义CNN的py文件中调用cnn模型&#xff0c;运行正常&#xff0c;但是在其他py文件中进行时就出现问题 ValueError: Tensor(“Variable:0” dtypefloat32_ref) must be from the same graph as Tensor(“Reshape:0”,…

XML —— DTD介绍

一、DTD介绍 Document Type Definition&#xff1b; DTD是一种XML的约束方式&#xff0c;除了此种约束方式外&#xff0c;还有XSchema&#xff0c;XSchema比DTD的约束能力还要强&#xff0c;因此DTD正在逐渐淘汰&#xff1b; DTD的目的就是约束XML标签的写法&#xff1b;比如在…

error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version

更新的软件可以解决 TortoiseGit-preview-2.5.7.0-20180127-b2d00f8-64bit.msi和Git-2.16.2-64-bit.exe。 链接地址为&#xff1a; https://github.com/git-for-windows/git/releases/download/v2.16.2.windows.1/Git-2.16.2-64-bit.exe https://download.tortoisegit.org/tgi…

Linux 图片传输功能c/c++(初版)

由于深度学习任务的需要&#xff0c;要在程序里面嵌入一个module。 这个module 的功能是接收来自ios客户端的图片。并且传送给深度学习分类器进行处理。 于是看了看各种各样的 module 实现方案。 先是用IO函数把图片以数组的方式存起来。 再和服务器建立连接&#xff0c;socket…

Val编程-val系列编程思想

利用Val语言可以编写出各种各样的应用程序。正如windows phone面临的窘境一样&#xff0c;受众太小&#xff0c;市场不大。应用程序不多&#xff0c;所以也谈不上成熟。国内的应用程序基本上就是简单的小程序&#xff0c;谈不上什么编程思想。国外许多都是基于kernel的而衍生出…

Celery的实践指南

Celery的实践指南celery原理&#xff1a;celery实际上是实现了一个典型的生产者-消费者模型的消息处理/任务调度统&#xff0c;消费者(worker)和生产者(client)都可以有任意个&#xff0c;他们通过消息系统&#xff08;broker&#xff09;来通信。典型的场景为&#xff1a;客户…

【pyqt5学习】——bug修复,利用qt资源库qrc文件进行背景图像设置,不显示图像

目录 bug描述 bug分析 bug解决 bug描述 利用下面文章的方法进行资源设置后&#xff0c;有的显示了有的没有显示 【pyqt5学习】——pyqt5中.qrc资源文件的创建与编写_有情怀的机械男的博客-CSDN博客_python qrc目录一、说明二、安装pyqt5以及相关工具&#xff08;pyqt5、pyuic…