按照公式正常去求每次的余数。然后判断所求是否为0,为0跳出循环。。。
// File Name: 1014.cpp
// Author: Toy
// Created Time: 2013年03月08日 星期五 17时31分14秒
#include <iostream>
#include <cstdio>
#include <cstring>
#include <vector>
#include <cctype>
#include <cmath>
#include <string>
#include <algorithm>
#include <cstdlib>
using namespace std;
int step, mod, cmp, A[100010], i;
int main ( ) {
while ( scanf ( "%d%d", &step, &mod ) != EOF && step >= 1 && mod <= 100000 ) {
int tmp = 0;
memset ( A, 0, sizeof ( A ) );
do {
A[tmp + 1] = ( A[tmp] + step ) % mod;
tmp++;
} while ( A[tmp] != 0 );
printf ( "%10d%10d ", step, mod );
if ( tmp == mod ) printf ( "Good Choice\n\n" );
else printf ( "Bad Choice\n\n" );
}
return 0;
}