社区讨论

dddd

学术版参与者 7已保存回复 6

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
6 条
当前快照
1 份
快照标识符
@mkrxgyc8
此快照首次捕获于
2026/01/24 14:27
4 周前
此快照最后确认于
2026/01/24 14:41
4 周前
查看原帖
CPP
#include <bits/stdc++.h>
using namespace std;
double money1 = 10,money2 = 10,maxn = 0,maxm = 0,cnt = 0,cny = 0;
string s[10] = {{"豌豆射手"}};
int main()
{
	srand(time(0));
	int t;
	cin >> t;
	while (t--)
	{
		int id = 1e9;
		while (id <= 0 || id >= 3) cin >> id;
		int n = 1e9,s;
		if (id == 1) while (money1 < n) cin >> n;
		else while (money2 < n) cin >> n;
		if (id == 1) money1 -= n;
		else money2 -= n;
		if (n == 1) s = 3;
		if (n == 2) s = 5;
		if (n == 3) s = 8;
		if (n == 5) s = 13;
		if (n == 8) s = 18;
		if (n == 10) s = 25;
		while (s--)
		{
			int a = rand() % 120 + 1;
			if (a == 100)
			{
				cout << "Is HR card!\n";
				if (id == 1) money1 += 2.5;
				else money2 += 2.5;
				int w = rand() % 2 + 1;
				if (w == 1)
				{
					cout << "in front to 5000!\n";
					if (id == 1)
					{
						money1 += 1;
						++cnt;
					}
					else
					{
						money2 += 1;
						++cny;
					}
				}
			}
			else if (a == 90)
			{
				cout << "Is ZR card!\n";
				if (id == 1) money1 += 1.8;
				else money2 += 1.8;
				int w = rand() % 5 + 1;
				if (w == 4)
				{
					cout << "in front to 5000!\n";
					if (id == 1)
					{
						money1 += 1;
						++cnt;
					}
					else
					{
						money2 += 1;
						++cny;
					}
				}
			}
			else if (a == 2 || a == 55 || a == 66 || a == 40 || a == 116 || a == 28 || a == 16 || a == 77 || a == 24 || (a <= 74 && a >= 70) || (a <= 23 && a >= 22) || a == 42 || a == 34 || a == 63 || a == 2 || a == 10 || a == 48 || a == 80)
			{
				cout << "Is SR card!\n";
				if (id == 1) money1 += 0.5;
				else money2 += 0.5;
			}
			else if (a == 4 || a == 8 || a == 12 || a == 30 | a == 99 || a == 45 || a == 46 || a == 60 || a == 61 || a == 67 || a == 87 || a == 21 || a == 20 || a == 51)
			{
				cout << "Is SSR card!\n";
				if (id == 1) money1 += 0.8;
				else money2 += 0.8;
				int w = rand() % 50 + 1;
				if (w == 36)
				{
					cout << "in front to 5000!\n";
					if (id == 1)
					{
						money1 += 1;
						++cnt;
					}
					else
					{
						money2 += 1;
						++cny;
					}
				}
			}
			else if (a == 1 || a == 111)
			{
				cout << "Is UR card!\n";
				if (id == 1) money1 += 1.3;
				else money2 += 1.3;
				int w = rand() % 20 + 1;
				if (w == 14)
				{
					cout << "in front to 5000!\n";
					if (id == 1)
					{
						money1 += 1;
						++cnt;
					}
					else
					{
						money2 += 1;
						++cny;
					}
				}
			}
			else
			{
				cout << "Is R card!\n";
				if (id == 1) money1 += 0.25;
				else money2 += 0.25;
			}
			cout << a << "\n";
		}
		cout << money1 << ' ' << money2 << "\n";
		maxn = max(maxn,money1);
		maxm = max(maxm,money2);
	}
	cout << "\n" << maxn << ' ' << maxm << "\n" << cnt << ' ' << cny << "\n";
	if (money1 != money2)
	{
		if (money1 > money2) cout << "1 is winner!";
		else cout << "2 if winner";
	}
	else if (maxn != maxm)
	{
		if (maxn > maxm) cout << "1 is winner!";
		else cout << "2 if winner";
	}
	else if (cnt != cny)
	{
		if (cnt > cny) cout << "1 is winner!";
		else cout << "2 if winner";
	}
	else cout << "is draw!";
	return 0;
}

回复

6 条回复,欢迎继续交流。

正在加载回复...