2018-12-28 13:06

计算周期性序列bn = Bn mod P的问题,用什么数据结构的思路?是C语言

Problem Description
Ene was a girl lives in computer systems. When she was studying the periodic sequence bn = Bn mod P (B is an integer and P is a prime number, n >= 0), she chose a contiguous subsequence bs, bs + 1, …, bt, and marked them as special numbers. Then she began to investigate another sequence an = M × An mod P, (M and A are integers) and incidentally such a problem came to her mind: what is the minimum non-negative integer k such that ak is a special number(k starts from 0) ?

As a result of Ene's ability to control a computer, she soon answered the question of herself. But as she had never taken any computer science courses, she could only enumerate all possible solutions to get the answer. Your task is to solve her questions faster, so your algorithm should possess a lot higher performance than hers.

There are no more than 100 test cases in the input. In each case, you are given six integers M, A, B, s, t, P, satisfying 2 ≤ A, B, M < P ≤ 109,0 ≤ s ≤ t < P - 1, and P is a prime number. The input ends by 0 0 0 0 0 0.

For each test case, output your answer k in one line. If there's no solution, output "impossible" (no quotes).

Sample Input
2 3 5 1 6 11
2 3 8 1 6 11
0 0 0 0 0 0

Sample Output

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答