求助
  • 板块P8584 探索未知
  • 楼主xingze
  • 当前回复0
  • 已保存回复0
  • 发布时间2022/10/24 13:20
  • 上次更新2023/10/27 06:10:16
查看原帖
求助
693552
xingze楼主2022/10/24 13:20

样例全过,实交不过

#include <iostream>
using namespace std;
int main()
{
	int n, a[10000]{}, b[10000]{}, ab1 = 0, ab2 = 0, abab[10000]{};
	cin >> n;
	for (int i = 0; i < n; i++)
		cin >> a[i] >> b[i] >> abab[i];
	if (abab[0] == 1)
	{
		ab1 = a[0];
		ab2 = b[0];
	}
	else
	{
		ab1 = ab1 - a[0];
		ab2 = ab2 - b[0];
	}
	for (int i = 1; i < n; i++)
	{
		if (abab[i] == 1)
		{
			ab1 = ab1 * b[i] + a[i] * ab2;
			ab2 = ab2 * b[i];
		}
		else
		{
			ab1 = ab1 * b[i] - a[i] * ab2;
			ab2 = ab2 * b[i];
		}
	}
	if (ab1 == ab2)
	{
		cout << 1 << endl;
		return 0;
	}
	for (int i = 2; i <= ab2; i++)
	{
		if (ab1 / i * i == ab1 && ab2 / i * i == ab2)
		{
			
			ab1 /= i;
			ab2 /= i;
			
		}
		else
			continue;
	}
	cout << ab1 << "/" << ab2 << endl;
}

2022/10/24 13:20
加载中...