Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

MultiplyingByRotation/곽세환

From ZeroWiki
Revision as of 00:16, 27 March 2026 by Maintenance script (talk | contribs) (Repair batch-0002 pages from live compare)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

소감

통과X

소스

#include <iostream>
#include <cmath>
using namespace std;

const int MAX = 20;	// 최대 20자리까지

void main()
{
	int base, factor1, factor2;
	cin >> base >> factor1 >> factor2;
	
	int number[MAX] = {0};
	number[0] = factor1;
	int number_jarisu = 1;

	int dec, dec2;

	while (true)
	{
		dec = 0;
		dec2 = 0;
		for (int i = 0; i < number_jarisu; i++)
			dec += number[i] * pow(base, i);
		for (i = 1; i < number_jarisu; i++)
			dec2 += number[i] * pow(base, i - 1);
		dec2 += number[0] * pow(base, number_jarisu - 1);

		if (dec * factor2 == dec2)
			break;

		number[1]++;

		for (i = 1; i < number_jarisu; i++)
		{
			if (number[i] == base)
			{
				number[i + 1]++;
				number[i] = 0;
			}
			else
				break;
		}
		if (i == number_jarisu)
				number_jarisu++;

	}
	cout << number_jarisu << endl;
	//for (int i = number_jarisu - 1; i >= 0; i--)
	//	cout << number[i] << " ";
}

댓글


MultiplyingByRotation