Advertisement
dimipan80

C#Exams 5. Bit Killer (on Java Code)

Aug 22nd, 2014
192
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 0.88 KB | None | 0 0
  1. import java.util.Scanner;
  2.  
  3. public class _5_BitKiller {
  4.  
  5.     public static void main(String[] args) {
  6.         // TODO Auto-generated method stub
  7.         Scanner scan = new Scanner(System.in);
  8.         int count = scan.nextInt();
  9.         int step = scan.nextInt();
  10.  
  11.         int outputNum = 0;
  12.         int bitsCounter = 0;
  13.         int positionInSeq = 0;
  14.         for (int i = 0; i < count; i++) {
  15.             int number = scan.nextInt();
  16.             for (int bit = 7; bit >= 0; bit--) {
  17.                 if (!(positionInSeq % step == 1 || (positionInSeq > 0 && step == 1))) {
  18.                     bitsCounter++;
  19.                     outputNum <<= 1;
  20.                     int bitValue = (number >>> bit) & 1;
  21.                     outputNum |= bitValue;
  22.                     if (bitsCounter == 8) {
  23.                         System.out.println(outputNum);
  24.                         outputNum = 0;
  25.                         bitsCounter = 0;
  26.                     }
  27.                 }
  28.  
  29.                 positionInSeq++;
  30.             }
  31.         }
  32.  
  33.         if (bitsCounter > 0) {
  34.             outputNum <<= (8 - bitsCounter);
  35.             System.out.println(outputNum);
  36.         }
  37.     }
  38.  
  39. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement