zoukankan      html  css  js  c++  java
  • AC日记——加密的病历单 openjudge 1.7 12

    12:加密的病历单

    总时间限制: 
    1000ms
     
    内存限制: 
    65536kB
    描述

    小英是药学专业大三的学生,暑假期间获得了去医院药房实习的机会。 
    在药房实习期间,小英扎实的专业基础获得了医生的一致好评,得知小英在计算概论中取得过好成绩后,主任又额外交给她一项任务,解密抗战时期被加密过的一些伤员的名单。 
    经过研究,小英发现了如下加密规律(括号中是一个“原文 -> 密文”的例子) 
    1.  原文中所有的字符都在字母表中被循环左移了三个位置(dec  -> abz) 
    2.  逆序存储(abcd -> dcba ) 
    3.  大小写反转(abXY -> ABxy) 

    输入
    一个加密的字符串。(长度小于50且只包含大小写字母)
    输出
    输出解密后的字符串。
    样例输入
    GSOOWFASOq
    样例输出
    Trvdizrrvj
    来源
    医学部计算概论2011年期末考试(王志钢)改编

    思路:

      大模拟;

    来,上代码:

    #include<cstdio>
    #include<string>
    #include<iostream>
    #include<algorithm>
    
    using namespace std;
    
    int len;
    
    string word;
    
    void trun()
    {
        int l=0,r=len-1;
        while(r>l)
        {
            swap(word[l],word[r]);
            r--,l++;
        }
    }
    
    inline char char_(char char__)
    {
        if(char__>='A'&&char__<='Z')
        {
            char__+=3;
            if(char__>'Z') char__-=26;
            char__+=32;
        }
        else if(char__>='a'&&char__<='z')
        {
            char__+=3;
            if(char__>'z') char__-=26;
            char__-=32;
        }
        return char__;
    }
    
    int main()
    {
        cin>>word;
        len=word.length();
        trun();
        for(int i=0;i<len;i++) word[i]=char_(word[i]);
        cout<<word<<endl;
        return 0;
    }
  • 相关阅读:
    JAVA线程池
    数据库三范式和反三范式
    nvm切换node的版本
    vue源码解析一
    css实现气泡样式
    openlayer 地图实现圈选框选清楚 选择地图区域
    vs code开发常用插件
    记录几个好用的工具
    03 使用css改变页面样式
    02 常用的html元素
  • 原文地址:https://www.cnblogs.com/IUUUUUUUskyyy/p/6104598.html
Copyright © 2011-2022 走看看