F.A.Q
Hand In Hand
Online Acmers
Problem Archive
Realtime Judge Status
Authors Ranklist
 
     C/C++/Java Exams     
ACM Steps
Go to Job
Contest LiveCast
ICPC@China
Best Coder beta
VIP | STD Contests
    DIY | Web-DIY beta
Author ID 
Password 
 Register new ID

Binary Integer

Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 189    Accepted Submission(s): 44


Problem Description
An antique machine with C(n , 3) switches capable of processing integers in the range 0...2N-1 has just been discovered. Each switch is associated to a distinct integer in 0...2N-1 with exactly three ones in its binary representation. By setting switches associated with number X0,X1...XM-1 to on, any integer Y passing through the machine will render a result of Y¨’X0¨’X1¨’...¨’XM-1(here ¡°¨’¡± stands for bitwise-XOR).
We are interested in the number of configurations capable of transforming integer S into T with exactly K switches set to on. Could you write a program to help us?
 

Input
There are multiple test cases in the input file.
Each test case starts with two integers, N and K (1 ¡Ü N ¡Ü 40 , 0 ¡Ü K ¡Ü min{20 , C(N,3)} ), followed by two binary integers, S and T, each containing exactly N bits.
Two successive test cases are separated by a blank line. A case with N = 0 and K = 0 indicates the end of the input file, and should not be processed by your program.
 

Output
For each test case, please print a single integer, the total number of ways to
transform the first integer into the second one. Since the answer could be quite large,
you are only required to find the result % 10007.
 

Sample Input
4 3 1101 1001 3 1 101 010 5 3 11010 10111 0 0
 

Sample Output
Case #1: 1 Case #2: 1 Case #3: 6
 

Source
 

Statistic | Submit | Discuss | Note
Hangzhou Dianzi University Online Judge 3.0
Copyright © 2005-2024 HDU ACM Team. All Rights Reserved.
Designer & Developer : Wang Rongtao LinLe GaoJie GanLu
Total 0.000000(s) query 1, Server time : 2024-11-26 04:01:27, Gzip enabled