Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- class ShuffleBits
- {
- static void Main()
- {
- uint first = uint.Parse(Console.ReadLine());
- uint second = uint.Parse(Console.ReadLine());
- string firstToString = Convert.ToString(first, 2).PadLeft(32, '0');
- string secondToString = Convert.ToString(second, 2).PadLeft(32, '0');
- string result = string.Empty;
- if (first >= second)
- {
- for (int i = 0; i < 32; i++)
- {
- result += firstToString[i].ToString();
- result += secondToString[i].ToString();
- }
- }
- else
- {
- for (int i = 0; i < 32; i += 2)
- {
- result += firstToString[i].ToString();
- result += firstToString[i + 1].ToString();
- result += secondToString[i].ToString();
- result += secondToString[i+1].ToString();
- }
- }
- ulong output = 0;
- for (int i = 63; i >= 0; i--)
- {
- output |= ulong.Parse(result[i].ToString()) << (63-i);
- }
- Console.WriteLine(output);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement