zoukankan      html  css  js  c++  java
  • Python HDB3 AMI 编码与解码

     1 # -*- coding: cp936 -*-
     2 pre_n = '010010000100001100000000000000000000000001010001001001001010000101'
     3 print '编码过程……………………'
     4 length = len(pre_n)
     5 pre_list = list(pre_n)
     6 for ch in range (0,length):
     7     pre_list[ch] = int (pre_list[ch])
     8 store_list = pre_list
     9 print pre_list
    10 ich = -1 ;
    11 for ch in range (0,length):
    12     if pre_list[ch] == 1 :
    13         ich = ich * (-1)
    14     pre_list[ch] = pre_list[ch]*ich;
    15 print pre_list
    16 pre_flag_num = 0;
    17 flag_zero = 0;
    18 for ch in range (0,length):
    19     if pre_list[ch] <> 0 :
    20         flag_num = pre_list[ch];
    21         flag_zero = 0;
    22     else:
    23         flag_zero += 1;
    24     if flag_zero == 4 :
    25         if flag_num == pre_flag_num :
    26             pre_list[ch-3] = flag_num * -1;
    27             pre_list[ch] = flag_num * -1;
    28             pre_flag_num = flag_num * -1;
    29             for ch_temp in range(ch+1,length):
    30                 pre_list[ch_temp] = pre_list[ch_temp] * -1
    31         else:
    32             pre_list[ch] = flag_num ;
    33         pre_flag_num = pre_list[ch];
    34         flag_zero = 0;
    35 print pre_list,'\n 解码过程………………'
    36 flag_zero = 0;
    37 for ch in range (0,length):
    38     if flag_zero == 2 :
    39         if flag_num == pre_list[ch]:
    40             flag_zero = 0
    41             for ch_temp in range(ch-3, ch+1):
    42                 pre_list[ch_temp] = 0;
    43     if flag_zero == 3 :
    44         if pre_list[ch] <> 0 :
    45             flag_zero = 0;
    46             for ch_temp in range(ch-3, ch+1):
    47                 pre_list[ch_temp] = 0;
    48     if pre_list[ch] <> 0 :
    49         flag_num = pre_list[ch]
    50         flag_zero = 0;
    51     else:
    52         flag_zero += 1;
    53     pre_list[ch] = abs(pre_list[ch])
    54 print pre_list
    55 if pre_list is store_list:
    56     print "Successed ..."
  • 相关阅读:
    HDU6300(2018多校第一场)
    HDU6301(2018多校第一场)
    HDU6308(2018多校第一场)
    HDU6299(2018多校第一场)
    HDU6298(2018多校第一场)
    HDU1255覆盖的面积
    51nod 2133 排队接水
    bryce1010专题训练——Splay树
    img
    操作系统实验代码
  • 原文地址:https://www.cnblogs.com/Kaysin/p/3029729.html
Copyright © 2011-2022 走看看