Submission #28180

#TimeUsernameProblemLanguageResultExecution timeMemory
28180IE (#71)The Ethereum and The Bitcoin (FXCUP2_ethereum)C++14
0 / 1
0 ms1120 KiB
#include "ethereum.h"
#include <algorithm>
using namespace std;

pair<long long, long long> extended_gcd(long long a, long long b) {
	if (b == 0) return make_pair(1, 0);
	pair<long long, long long> t = extended_gcd(b, a % b);
	return make_pair(t.second, t.first - t.second * (a / b));
}

excinfo GetExchangePrice() {
	excinfo A = Exchange(100000000);
	excinfo B = Exchange(99999999);
	long long p = A.BTC - B.BTC;
	long long q = A.ETH - B.ETH;

	excinfo ret;
	if (p >= 0 && q <= 0){
		auto v = extended_gcd(p,-q);
		ret.BTC = v.first;
		ret.ETH = -v.second;
	}
	else{
		auto v = extended_gcd(-p,q);
		ret.BTC = -v.first;
		ret.ETH = v.second;
	}
	return ret;
}
#Verdict Execution timeMemoryGrader output
Fetching results...