HDU 2700 Parity(找规律)

来源:互联网 发布:adams2016软件卸载 编辑:程序博客网 时间:2024/06/15 08:39

http://acm.hdu.edu.cn/showproblem.php?pid=2700

Parity

Time Limit: 2000/1000 MS(Java/Others)    MemoryLimit: 32768/32768 K (Java/Others)
Total Submission(s):1137    AcceptedSubmission(s): 891


Problem Description
A bit string has odd parity if the number of 1's is odd. A bitstring has even parity if the number of 1's is even.Zero isconsidered to be an even number, so a bit string with no 1's haseven parity. Note that the number of
0's does not affect the parity of a bit string.
 


 

Input
The input consists of one or more strings, each on a line byitself, followed by a line containing only "#" that signals the endof the input. Each string contains 1–31 bits followed by either alowercase letter 'e' or a lowercase letter 'o'.
 


 

Output
Each line of output must look just like the corresponding lineof input, except that the letter at the end is replaced by thecorrect bit so that the entire bit string has even parity (if theletter was 'e') or odd parity (if the letter was 'o').
 


 

Sample Input
101e010010o 1e 000e 110100101o #
 


 

Sample Output
10100100101 11 0000 1101001010
 


 

Source
2008 Mid-Central USA
 


 

Recommend
zty
 
寻找规律

#include<stdio.h>
#include<string.h>
int main()
{
  char c[35];
  char *p=c;
  int len,i,count;
  while(scanf("%s",c)!=EOF)
  {
   if(c[0]=='#') break;
 len=strlen(c);
 count=0; 
   for(i=0;i<len-1;i++)
    {
    if(*(p+i)=='1')
        count++;   
    }
   if((count%2==0&&c[len-1]=='e')||(count%2==1&&c[len-1]=='o'))//跟字符串里面的字符1个数有关
      c[len-1]='0';//注意加‘’符号,否则会输出很奇怪的东西
    elsec[len-1]='1';
      puts(c);
  }
  return 0;
}

原创粉丝点击