namespace hdk{
const size_t fixsize=10000;
class StringAddition_InFix{
private:
string x="00";
inline void fixed(int size){
if(size<=x.length())return;
string res;
for(int i=1;i<=size-x.length();++i){
res.push_back('0');
}
for(int i=0;i<=x.length()-1;++i){
res.push_back(x[i]);
}
x=res;
}
inline void refixed(){
string res;bool is0=false;
res.push_back('0');
for(int i=0;i<=x.length()-1;++i){
if(x[i]!='0'||is0){
is0=true;
res.push_back(x[i]);
}
}
x=res;
}
public:
void operator =(string inx){
x.push_back('0');
for(int i=0;i<=inx.length()-1;++i){
x.push_back(inx[i]);
}
}
void operator =(long long inx){
x.clear();string ans;
int r=inx;
while(r){
ans.push_back(r%10+'0');
r/=10;
}
x.push_back('0');
for(int i=ans.size()-1;i>=0;--i){
x.push_back(ans[i]);
}
}
string it(){
string res;
for(int i=1;i<=x.length()-1;++i){
res.push_back(x[i]);
}
if(res.empty()) res="0";
return res;
}
StringAddition_InFix operator +(StringAddition_InFix a){
StringAddition_InFix ans;ans=a;
if(x.length()>ans.x.length()){
ans.fixed(x.length());
}
else fixed(ans.x.length());
for(int i=max(x.length(),ans.x.length())-1;i>=1;--i){
int np=(ans.x[i]-'0'+x[i]-'0');
if(np>=10) ans.x[i-1]+=np/10;
ans.x[i]=np%10+'0';
}
ans.refixed();refixed();
return ans;
}
StringAddition_InFix operator +(long long a){
StringAddition_InFix r;r=a;
return *this+r;
}
void operator +=(StringAddition_InFix a){
*this=*this+a;
}
void operator +=(long long a){
*this=*this+a;
}
friend ostream& operator<<(ostream& output,StringAddition_InFix& inx){
output<<inx.it()<<endl;
return output;
}
friend istream& operator>>(istream& input,StringAddition_InFix& inx){
input>>inx.x;
inx.fixed(inx.x.length()+1);
return input;
}
};
typedef StringAddition_InFix Int;
Int max(Int &la,Int &lb){
if(la.it()>lb.it()) return la;
else return lb;
}
Int min(Int &la,Int &lb){
if(la.it()<lb.it()) return lb;
else return la;
}
}

[namespace hdk] StringAddition_InFix的更多相关文章

  1. springcloud必知功能使用教程

    springcloud Spring Cloud是一系列框架的有序集合.它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册.配置中心.消息总线.负载均衡.断路 ...

  2. 理解Docker(3):Docker 使用 Linux namespace 隔离容器的运行环境

    本系列文章将介绍Docker的有关知识: (1)Docker 安装及基本用法 (2)Docker 镜像 (3)Docker 容器的隔离性 - 使用 Linux namespace 隔离容器的运行环境 ...

  3. C++ namespace

    namespace, 命名空间, 用于解决命名冲突的问题. Python中的package/module, Javascript中的object, Java中的package都具有这样的功能. 如何使 ...

  4. C++ 之namespace常见用法

    一.背景 需要使用Visual studio的C++,此篇对namespace的常用用法做个记录. 二.正文 namespace通常用来给类或者函数做个区间定义,以使编译器能准确定位到适合的类或者函数 ...

  5. using namespace std 和 using std::cin

    相较using std::cin使用using namespace std不会使得程序的效率变低,或者稳定性降低,只是这样作会将很多的名字引入程序,使得程序员使用的名字集合变小,容易引起命名冲突. 在 ...

  6. Why Namespace? - 每天5分钟玩转 OpenStack(102)

    上一节我们讨论了 Neutron 将虚拟 router 放置到 namespace 中实现了不同 subnet 之间的路由.今天探讨为什么要用 namespace 封装 router? 回顾一下前面的 ...

  7. struts2中错误There is no Action mapped for namespace [/] and action name [] associated with context path

    1 There is no Action mapped for namespace [/] and action name [] associated with context path [/Stru ...

  8. PHP 命名空间(namespace)

    PHP 命名空间(namespace) PHP 命名空间(namespace)是在PHP 5.3中加入的,如果你学过C#和Java,那命名空间就不算什么新事物. 不过在PHP当中还是有着相当重要的意义 ...

  9. AMD and CMD are dead之Why Namespace?

    缘由 当我看到_Franky兄的微博的时候: 我觉得我有必要出来详细说说KMDjs到底有什么本质上的优势了,连教主_Franky.貘吃馍香都不能理解他的好处,那么可想而知,在前端圈.或是全端圈.或是I ...

  10. 使用mvc时,在视图view中使用强类型视图,在web.config文件中添加命名空间namespace的引用不起作用,解决方法

    这是view中的model代码: @model t_user_info 这是web.config配置文件只的代码: <namespaces> <add namespace=" ...

随机推荐

  1. 🚀RabbitMQ+redis+Redisson分布式锁+seata实现订单服务

    引言 订单服务涉及许多方面,分布式事务,分布式锁,例如订单超时未支付要取消订单,订单如何防止重复提交,如何防止超卖.这里都会使用到. 开启分布式事务可以保证跨多个服务的数据操作的一致性和完整性, 使用 ...

  2. 假期小结7爬虫学习requests

    这周我初步学习了py爬虫的相关知识,以下是我的部分总结 URL headers(URL头部)是HTTP请求中包含的一部分信息,用于描述.控制和传递请求的各种元数据.它们是位于HTTP请求消息的起始部分 ...

  3. OpenStack 基本命令

    keystone source /etc/keystone/admin-openrc.sh #登录 openstack user create --password ps1234 --email hq ...

  4. 测试工程师-bug的组成要素

    bug的组成要素:所属产品.所属模块.版本.指派开发.bug标题.严重程度.优先级.bug类型.重现步骤.附件等: 1. 所属产品.所属模块.版本.指派开发 根据相应的项目正确填写 2.bug标题 简 ...

  5. 【SpringBoot】Re 01 补充学习

    对SpringBoot后续的再补充学习: 使用IDEA创建项目不勾选任何组件 默认的POM结构: <?xml version="1.0" encoding="UTF ...

  6. 【Vue】07 Webpack Part3 Loader

    Loader是Webpack的核心概念: 除了JS文件以外我们还有CSS,图片,包括一些ES6规范的代码 或者是TypeScript各种前端类型的文件 但是最终必须统一转换成JS文件,Webpack本 ...

  7. 图解Java设计模式

    待补充 设计模式介绍 设计模式(design pattern)是对软件设计中普遍存在(反复出现)的各种问题,所提出的解决方案. 设计模式使用的位置 功能模块+框架上. 设计模式在软件中哪里?面向对象( ...

  8. Linux环境下配置vscode的C/C++ 的make编译环境(编写makefile方式)代码Demo版

    以前写过同样话题下的图文版的,这里给出一个代码Demo版本,上一个图文版本参见: Linux环境下配置vscode的C/C++ 的make编译环境(编写makefile方式) ============ ...

  9. VSCode配置git

    1.背景 vscode中基础git; 前提:本地已经安装好了git 有这样的菜单,并且可以正常上传下载代码 2.步骤 步骤一:找的git的安装路径: D:\Program Files\Git 步骤二: ...

  10. Xinference实战指南:全面解析LLM大模型部署流程,携手Dify打造高效AI应用实践案例,加速AI项目落地进程

    Xinference实战指南:全面解析LLM大模型部署流程,携手Dify打造高效AI应用实践案例,加速AI项目落地进程 Xorbits Inference (Xinference) 是一个开源平台,用 ...