加密2-华东师范-2020
来源:互联网 发布:分手后后悔 知乎 编辑:程序博客网 时间:2024/04/28 12:56
加密2
Time Limit:1000MS Memory Limit:30000KB
Total Submit:145 Accepted:83
Description
对一个整数(32位无符号整数)进行规则如下的加密:
1. 低16位和高16位互换
2. 此时的低16位按位取反
3. 此时的高16位与低16位进行异或运算,结果存储到高16位
现在根据加密后的整数,求出加密前的整数的16进制形式.
Input
输入有多case,每个case一行,且只有一个整数
Output
对于每个case输出一个整数(16进制形式),即加密前的整数。
Sample Input
4294901759
Sample Output
1
hint:十六进制输出时请使用大写字母(A,B...)
解题思路:
1、 必须知道按位异或的特点:异或运算的特点如果 a^b=c,那么就有 c^b = a以及c^a=b此规律可以用来进行最简单的加密和解密.
2、 倒着求解即可。
程序代码:
#include<stdio.h>
int main()
{
unsigned int n,a,b,i,j,k;
while(scanf("%d",&n)!=EOF)
{
a=n>>16; //交换后的异或高16位
b=n<<16; // 需要注意的是 每次参与运算的只有16位,所以取完数,在移回来。
b=b>>16; //交换后的低16位
k=a^b; // 交换后的高16位
b=~b; // 交换后,按位取反前的 低16位
b=b<<16; // 低 16 位变成高16位
n=b+k; // 相加即可
printf("%X\n",n);
}
return 0;
}
- 加密2-华东师范-2020
- 足球锦标赛 华东师范
- 考研之华东师范
- 地方是开机看华东师范就就卡
- 第三方华东师范活动方式答复说
- 士大夫华东师范加拿大方式交纳党费
- 华东师范大学 2020 加密2
- 华东师范大学2020 加密2
- 2020 加密2
- EOJ 2019 加密1 && EOJ 2020 加密2
- ACM: 华东师范oj 1600&n…
- 加密2
- net加密基础2-非对称加密
- [RSA加密2]RSA加密解密原理
- 的发挥的发挥地方和第三个导师工读生个华东师范个
- 【点击模型学习笔记】广告点击率估算技术综述_华东师范大学学报2013
- 华东师范介绍的覅幅度死囧反对宋I哦if地送放松啊
- ACM: 动态规划 华东师范OJ 1244 …
- Hat's Fibonacci-hdu-1250
- java—try、catch、finally的使用
- 测试你是否和LTC水平一样高-hdu-1407
- IOS成长中 C语言之数据类型
- Calendar-poj-2080
- 加密2-华东师范-2020
- POJ 1611 The Suspects
- poj-1579Function Run Fun
- 《将博客搬至CSDN》
- [置顶]xxx定律-poj-3782
- [置顶]I Love This Game-杭电-2115
- [置顶]The Number of set-hdu-3006
- [置顶]整数解-hdu-2092
- [置顶]绝对值排序-hdu-2020