PAT甲级1136 - A Delayed Palindrome

本文介绍了一个实现字符串加法操作符重载的方法,并通过一个实例展示了如何使用该方法来检测一个数是否为回文数。通过不断将一个数与其反转后的数相加,直到形成回文数或达到迭代次数上限。
  1. string加法操作符重载
  2. string& assign (InputIterator first, InputIterator last);
  3. string& assign (const string& str, size_t subpos, size_t sublen = npos);
  4. void reverse (BidirectionalIterator first, BidirectionalIterator last);
#include<bits/stdc++.h>
using namespace std;
string operator+(const string& str1,const string& str2){
    int carry=0;
    string ret;
    for(int i=0;i<str1.size();++i){
        ret.push_back(((str1[i]-'0'+str2[i]-'0'+carry)%10)+'0');
        carry=(str1[i]-'0'+str2[i]-'0'+carry)/10;
    }
    if(carry!=0){
        ret.push_back(carry+'0');
    }
    reverse(ret.begin(),ret.end());
    return ret;
}
bool isPalindrome(string str){
    int s=0,e=str.size()-1;
    for(;s<e;++s,--e){
        if(str[s]!=str[e])return false;
    }
    return true;
}
int main(){
    //freopen("./in.txt","r",stdin);
    string str1,str2;
    cin>>str1;
    int times=10;
    bool flag=false;
    while(times--){
        if(isPalindrome(str1)){
            flag=true;
            cout<<str1<<" is a palindromic number."<<endl;
            break;
        }
        str2.assign(str1.begin(),str1.end());
        reverse(str2.begin(),str2.end());
        cout<<str1<<" + "<<str2<<" = ";
        str1=str1+str2;
        cout<<str1<<endl;       
    }
    if(!flag)cout<<"Not found in 10 iterations."<<endl;
    return 0;
} 
RabbitMQ 使用 DLX + TTL + rabbitmq_delayed_message_exchange 插件实现延迟队列,rabbitmq_delayed_message_exchange 插件新增了一种新的交换器类型,消息通过这种交换器路由可实现延迟发送[^2]。以下是使用 rabbitmq-plugins 配置和启用 rabbitmq_delayed_message_exchange 插件的步骤: ### 下载与放置插件 要确保已经把 rabbitmq_delayed_message_exchange 上传到了 rabbitmq_server-3.7.16 的 plugins 目录下。若未安装,可通过以下命令下载(以特定版本为例): ```bash wget https://dl.bintray.com/rabbitmq/community-plugins/3.7.x/rabbitmq_delayed_message_exchange/rabbitmq_delayed_message_exchange-20171201-3.7.x.zip ``` 解压下载的文件: ```bash unzip rabbitmq_delayed_message_exchange-20171201-3.7.x.zip ``` 将解压后的文件移动到 RabbitMQ 的 plugins 文件夹中(本机的 RabbitMQ 是 Docker 容器,plugins 文件夹位于 /plugins): ```bash mv rabbitmq_delayed_message_exchange-20171201-3.7.x.ez ./plugins ``` ### 启用插件 可以使用 rabbitmq-plugins 命令来启用 rabbitmq_delayed_message_exchange 插件: ```bash rabbitmq-plugins enable rabbitmq_delayed_message_exchange ``` ### 查看插件状态 可以使用以下命令查看插件列表和启用情况: ```bash rabbitmq-plugins list ``` ### 其他配置 开启 RabbitMQ 管理模块的插件,并配置到 RabbitMQ 节点上: ```bash rabbitmq-plugins enable rabbitmq_management ``` 以管理员身份在安装目录执行命令,添加服务到服务列表并设置自动启动: ```bash rabbitmq-service.bat install ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值