Submission #28109

# Submission time Handle Problem Language Result Execution time Memory
28109 2017-07-15T10:54:56 Z Shocking Hot(#1201, khsoo01) The Ethereum and The Bitcoin (FXCUP2_ethereum) C++11
0 / 1
0 ms 1120 KB
#include "ethereum.h"
#include <stdio.h>
typedef long long ll;
const ll v1 = 100000000, v2 = 99999999;

bool haja (excinfo &I) {
	return (I.BTC == 0 || I.ETH == 0);
}

excinfo GetExchangePrice() {
	ll r1, r2;
	excinfo A = Exchange(v1), B = Exchange(v2);
	bool B1 = haja(A), B2 = haja(B);
	if(B1 && B2) {
		if(A.BTC) r1 = v1 / A.BTC;
		if(A.ETH) r2 = v1 / A.ETH;
		if(B.BTC) r1 = v2 / B.BTC;
		if(B.ETH) r2 = v2 / B.ETH;
	}
	else if(B1) {
		if(A.BTC) {
			r1 = v1 / A.BTC;
			r2 = (v2 - B.BTC * r1) / B.ETH;
		}
		if(A.ETH) {
			r2 = v1 / A.ETH;
			r1 = (v2 - B.ETH * r1) / B.BTC;
		}
	}
	else if(B2) {
		if(B.BTC) {
			r1 = v2 / B.BTC;
			r2 = (v1 - A.BTC * r1) / A.ETH;
		}
		if(B.ETH) {
			r2 = v2 / B.ETH;
			r1 = (v1 - A.ETH * r1) / A.BTC;
		}
	}
	else {
		r2 = (B.BTC*v1 - A.BTC*v2)/(B.BTC*A.ETH - A.BTC*B.ETH);
		r1 = (v1 - A.ETH*r2)/A.BTC;
	}
	return {r1, r2};
}

Compilation message

ethereum.cpp: In function 'excinfo GetExchangePrice()':
ethereum.cpp:44:16: warning: 'r2' may be used uninitialized in this function [-Wmaybe-uninitialized]
  return {r1, r2};
                ^
ethereum.cpp:37:21: warning: 'r1' may be used uninitialized in this function [-Wmaybe-uninitialized]
    r1 = (v1 - A.ETH * r1) / A.BTC;
                     ^
# Verdict Execution time Memory Grader output
1 Correct 0 ms 1120 KB Output is correct
2 Correct 0 ms 1120 KB Output is correct
3 Correct 0 ms 1120 KB Output is correct
4 Correct 0 ms 1120 KB Output is correct
5 Correct 0 ms 1120 KB Output is correct
6 Correct 0 ms 1120 KB Output is correct
7 Correct 0 ms 1120 KB Output is correct
8 Correct 0 ms 1120 KB Output is correct
9 Correct 0 ms 1120 KB Output is correct
10 Correct 0 ms 1120 KB Output is correct
11 Correct 0 ms 1120 KB Output is correct
12 Correct 0 ms 1120 KB Output is correct
13 Correct 0 ms 1120 KB Output is correct
14 Correct 0 ms 1120 KB Output is correct
15 Correct 0 ms 1120 KB Output is correct
16 Correct 0 ms 1120 KB Output is correct
17 Correct 0 ms 1120 KB Output is correct
18 Correct 0 ms 1120 KB Output is correct
19 Correct 0 ms 1120 KB Output is correct
20 Incorrect 0 ms 1120 KB Output isn't correct