Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- class BitsInverter
- {
- static void Main()
- {
- byte n = byte.Parse(Console.ReadLine());
- byte step = byte.Parse(Console.ReadLine());
- byte[] numbersArr = new byte[n];
- byte mask = 1;
- byte bitToInvert = 0;
- byte byteCounter = 8;
- byte bitCounter = 0;
- byte counter = 0;
- for (byte i = 0; i < n; i++)
- {
- numbersArr[i] = byte.Parse(Console.ReadLine());
- }
- for (byte i = 0; i < numbersArr.Length; i++ )
- {
- for (byte y = bitCounter; ; y++)
- {
- bitToInvert = (byte)(byteCounter - (1 + (y * step)));
- if (bitToInvert < byteCounter)
- {
- mask = (byte)(mask << bitToInvert);
- numbersArr[i] = (byte)(numbersArr[i] ^ mask);
- mask = (byte)(mask >> bitToInvert);
- counter += 1;
- }
- else
- {
- break;
- }
- }
- bitCounter = counter;
- byteCounter += 8;
- }
- for (int i = 0; i < numbersArr.Length; i++)
- {
- Console.WriteLine(numbersArr[i]);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement