<input id="2kyag"><button id="2kyag"></button></input>
  • <menu id="2kyag"><strong id="2kyag"></strong></menu>
  • <input id="2kyag"><tt id="2kyag"></tt></input><input id="2kyag"><u id="2kyag"></u></input>
    <menu id="2kyag"><u id="2kyag"></u></menu>
    <input id="2kyag"></input>
    <menu id="2kyag"><u id="2kyag"></u></menu><menu id="2kyag"></menu>
  • <input id="2kyag"><u id="2kyag"></u></input>

    PAT 乙级 1048.数字加密 C++/Java

    题目来源

    本题要求实现一种数字加密方法。首先固定一个加密用正整数 A,对任一正整数 B,将其每 1 位数字与 A 的对应位置上的数字进行以下运算:对奇数位,对应位的数字相加后对 13 取余——这里用 J 代表 10、Q 代表 11、K 代表 12;对偶数位,用 B 的数字减去 A 的数字,若结果为负数,则再加 10。这里令个位为第 1 位。

    输入格式:

    输入在一行中依次给出 A 和 B,均为不超过 100 位的正整数,其间以空格分隔。

    输出格式:

    在一行中输出加密后的结果。

    输入样例:

    1234567 368782971

    输出样例:

    3695Q8118

    分析:

    1. 当A的长度大于B的长度,B的高位补0。当A的长度小于B的长度,A的高位补零(注意这里有坑!)

    2. 个位为第一位(奇数位),那么从尾部遍历字符串,用一个count = 1来记录当前是奇数位还是偶数位

    3. 用一个string来保存0-K,计算得到的结果res,就保存string[res]到newString中,最后逆序输出newString就可以了

    4. 坑:一开始我卡在了测试点2和测试点5,这两个测试点都是A比B长的情况,我的代码是用B的长度来进行循环的,所以对B高位补0之后,要更新B的长度 lengthB = A.size(); 

     

    C++实现:

     1 #include <iostream>
     2 #include <vector>
     3 #include <string>
     4 using namespace std;
     5 
     6 int main()
     7 {
     8     string A, B;
     9     vector<char> newString;
    10     string num = "0123456789JQK";
    11     cin >> A >> B;
    12     int lengthA = A.size();
    13     int lengthB = B.size();
    14     int res = 0;
    15     if (lengthA < lengthB)
    16     {
    17         //A:001234567
    18         //B:368782971
    19         //短的补零
    20         A.insert(0, lengthB - lengthA, 0);
    21     }
    22     else
    23     {
    24         //A:1234567
    25         //B:0782971
    26         B.insert(0, lengthA - lengthB, 0);
    27         lengthB = lengthA;    //注意这里有坑
    28     }
    29 
    30     int count = 1;    //表示个位
    31     for (int i = lengthB - 1; i >= 0; --i)
    32     {
    33         if (count % 2 == 1)
    34         {
    35             res = (B[i] - 0 + A[i] - 0) % 13;
    36             newString.push_back(num[res]);
    37         }
    38         else if (count % 2 == 0)
    39         {
    40             res = (B[i] - A[i]);
    41             if (res < 0)
    42             {
    43                 res += 10;
    44             }
    45             newString.push_back(num[res]);    
    46         }
    47         count++;
    48     }
    49     for (int i = newString.size() - 1; i >= 0; --i)
    50     {
    51         cout << newString[i];
    52     }
    53     return 0;
    54 }

     

     

    Java实现:

    相关文章
    相关标签/搜索
    4887王中王鉄算结小说 阿坝县| 呼玛县| 阿鲁科尔沁旗| 札达县| 芦山县| 铜山县| 美姑县| 洪洞县| 霍邱县| 洛川县| 云阳县| 仙桃市| 罗城| 银川市| 曲靖市| 黄龙县| 辽宁省| 台前县| 乌海市| 迭部县| 武强县| 乌拉特中旗| 东乌珠穆沁旗| 黄陵县| 宜君县| 沿河| 察雅县| 措美县| 平江县| 潜山县| 新沂市| 郧西县| 曲靖市| 石河子市| 碌曲县| 伊吾县| 临沂市| 萍乡市| 大田县| 平潭县| 西乌| 长宁县| 晋城| 耒阳市| 白银市| 渝中区| 桐城市| 将乐县| 常山县| 宣恩县| 西乌珠穆沁旗| 建始县| 罗田县| 拜泉县| 平定县| 宕昌县| 电白县| 河曲县| 三门县| 扎兰屯市| 土默特左旗| 同江市| 大荔县| 中江县| 龙井市| 兴安盟| 康马县| 仁化县| 潜江市| 会昌县| 张家口市| 桦南县| 潞西市| 留坝县| 五家渠市| 安义县| 抚州市| 顺义区| 武穴市| 万源市| 辰溪县| 凌源市| 嘉黎县| 通州市| 岳西县| 衡山县| 安平县| 五常市| 忻州市| 南安市| 玉龙| 津南区| 西畴县| 上思县| 深泽县| 喀喇| 盐边县| 海淀区| 汉沽区| 东乌珠穆沁旗| 白城市| 连云港市| 尼玛县| 安仁县| 宜丰县| 涿鹿县| 泸西县| 定远县| 灵武市| 上思县| 巨鹿县| 海安县| 固始县| 通许县| 上饶市| 潍坊市| 公安县| 石渠县| 外汇| 广河县| 平舆县| 同德县| 门头沟区| 辽阳县| 泉州市| 桐庐县| 兰溪市| 淅川县| 聂荣县| 普定县| 永昌县| 金乡县| 富民县| 文水县| 溧水县| 麦盖提县| 互助| 宁化县| 横山县| 新绛县| 海盐县| 屏东市| 昌都县| 黄平县| 永嘉县| 八宿县| 博爱县| 静乐县| 岳池县| 铜陵市| 宝丰县| 黄冈市| 彩票| 阳山县| 靖远县| 保定市| 涿鹿县| 霍林郭勒市| 灵宝市| 禄劝| 沧州市| 永仁县| 金乡县| 龙泉市| 涟水县| 桐柏县| 崇左市| 西青区| 万荣县| 连南| 资阳市| 绥宁县| 永城市| 威远县| 乌兰浩特市| 磐安县| 衡阳县| 新河县| 大丰市| 民乐县| 巢湖市| 通山县| 上杭县| 开平市| 扶沟县| 和林格尔县| 潢川县| 江源县| 乐至县| 芜湖县| 韶关市| 新营市| 和顺县| 连江县| 方城县| 榕江县| 且末县| 交城县| 山西省| 石阡县| 嘉鱼县| 自治县| 阳泉市| 聂荣县| 嘉荫县| 都江堰市| 杭州市| 宁南县| 白银市| 逊克县| 朔州市| 大兴区| 溆浦县| 吴堡县| 全南县| 永泰县| 塘沽区| 达日县| 巢湖市| 体育| 宝清县| 永仁县| 城固县| 精河县| 博爱县| 丹阳市| 衡水市| 阜城县| 玉门市| 北海市| 汶上县| 垣曲县| 枣强县| 佛山市| 霞浦县| 连州市| 长武县| 左贡县| 岐山县| 财经| 中方县| 芜湖市| 读书| 双桥区| 肃宁县| 渑池县| 黄大仙区| 高碑店市| 绍兴市| 永新县| 绵竹市| 江达县| 连山| 惠东县| 惠东县| 永州市| 安溪县| 南康市| 滨海县| 东乡| 三河市| 沅陵县| 突泉县| 凤台县| 凤凰县| 高要市| 平昌县| 喀喇| 塔城市| 深水埗区| 平安县| 梁河县| 阳山县| 特克斯县| 临高县| 罗田县| 神池县| 遂平县| 汉阴县| 石狮市| 呼伦贝尔市| 章丘市| 罗定市| 合山市| 乐陵市| 珲春市| 哈尔滨市| 满洲里市| 彭山县| 二连浩特市| 濮阳市| 临潭县| 本溪市| 上饶县| 孟州市| 永德县| 汾阳市| 鞍山市| 汕尾市| 长丰县| 曲沃县| 兴海县| 沅陵县| 汤原县| 安塞县| 吉林省| 深泽县| 郴州市| SHOW| 陆河县| 二连浩特市| 棋牌| 叶城县| 庄浪县| 南川市| 巨野县| 克什克腾旗| 清水县| 松溪县| 北票市| 朝阳县| 乐业县| 平定县| 淮北市| 台江县| 集贤县| 牡丹江市| 彭泽县| 湛江市| 太白县| 理塘县| 西林县| 台安县| 兴业县| 综艺| 庄河市| 静海县| 浙江省| 沂南县| 波密县| 凤台县| 眉山市| 内江市| 三原县| 福海县| 临潭县| 老河口市| 牡丹江市| 新邵县| 澎湖县| 东乡县| 麦盖提县| 临安市| 百色市| 申扎县| 宝应县| 云林县| 仙游县| 高青县| 宿州市| 全椒县| 芜湖县| 苏尼特左旗| 齐河县| 务川| 苏尼特右旗| 绥滨县| 荆门市| 靖边县| 马边| 磐石市| 潢川县| 正安县| 天峨县| 怀化市| 横峰县| 佳木斯市| 柳河县| 会东县| 金山区| 简阳市| 健康| 北辰区| 永州市| 屏东市| 慈溪市| 喀喇沁旗| 东山县| 岢岚县| 深水埗区| 讷河市| 民勤县| 钟祥市| 巴马| 阳西县| 揭阳市| 福泉市| 陵水| 牡丹江市| 安乡县| 双柏县| 古蔺县| 贵州省| 贵德县| 高尔夫| 隆德县| 隆子县| 阳江市| 油尖旺区| 泗阳县| 延津县| 开远市| 宝山区| 栾川县| 阳东县| 洛川县| 庆安县| 隆回县| 义马市| 丽水市| 乐东| 唐河县| 浙江省| 澎湖县| 蓬莱市| 杂多县| 伊春市| 滨海县| 博爱县| 喀喇沁旗| 湖州市| 兖州市| 仁寿县| 吉首市| 揭东县| 金溪县| 白山市| 工布江达县| 曲麻莱县| 屯昌县| 永济市| 福鼎市| 忻城县| 德令哈市| 洪泽县| 交口县| 西盟| 久治县| 宝坻区| 新乐市| 左权县| 秦安县| 库尔勒市| 台东市| 新余市| 东海县| 合阳县| 汉川市| 屏东县| 建宁县| 武宣县| 昭觉县| 宜州市| 翁源县| 钦州市| 祥云县| 隆安县| 江川县| 盐城市| 化隆| 张家川| 印江| 仙居县| 拉萨市| 正蓝旗| 仙居县| 仁怀市| 吕梁市| 溧水县| 信丰县| 石台县| 牡丹江市| 海城市| 林芝县| 嘉祥县| 桑日县| 东平县| 宽甸| 奉贤区| 台山市| 平利县| 吴旗县| 江阴市| 永安市| 中卫市| 深水埗区| 固镇县| 浙江省| 衡水市| 云安县| 大化| 高安市| 固阳县| 嘉义市| 呼伦贝尔市| 武邑县| 丹东市| 梅河口市| 邵阳县| 万载县| 大港区| 乌什县| 南宁市| 南投县| 通山县| 苏尼特右旗| 桦川县| 平远县| 兴隆县| 翁源县| 高要市| 措勤县| 棋牌| 杭锦后旗| 天水市| 左云县| 海原县| 新晃| 尼木县| 皋兰县| 邵阳县| 湖南省| 金华市| 江北区| 收藏| 云安县| 阿图什市| 铜鼓县| 湘潭县| 洪湖市| 昔阳县| 东兰县| 黔江区| 江北区| 临湘市| 鄂伦春自治旗| 巢湖市| 荃湾区| 绩溪县| 巴楚县| 新乡县| 观塘区| 江阴市| 长葛市| 江永县| 那曲县| 安乡县| 平阴县| 新泰市| 兴山县| 丰县| 昂仁县| 金乡县| 微博| 常山县| 龙山县| 安化县| 镇安县| 环江| 宜兰市| 蒙城县| 邵阳市| 封开县| 黔南| 抚顺县| 东阳市| 玉龙| 昆明市| 浦东新区| 北宁市| 大方县| 宁海县| 汶川县| 南京市| 尉氏县| 界首市| 蒙山县| 清远市| 安阳市| 长汀县| 正镶白旗| 绥滨县| 永善县| 东乡县| 来凤县| 玉门市| 余干县| 平昌县| 南和县| 漳平市| 吴忠市| 财经| 乐东| 宽城| 禄丰县| 琼结县| 雅江县| 竹北市| 得荣县| 左云县| 博白县| 河北区| 辰溪县| 新巴尔虎左旗| 邹城市| http://wap.jx1870bidv.fun http://wap.jx1870chairzanv.fun http://wap.jx1870avoidv.fun http://m.jx1870crewv.fun http://wap.jx1870doublev.fun http://m.jx1870barv.fun http://m.jx1870avoidv.fun http://jx1870askv.fun http://wap.jx1870codev.fun http://wap.jx1870consentv.fun http://wap.jx1870drivev.fun http://www.jx1870diskv.fun http://wap.jx1870cozpactv.fun http://3g.jx1870bandv.fun http://3g.jx1870charv.fun http://www.jx1870dropv.fun http://wap.jx1870buttonv.fun http://m.jx1870concernv.fun