Submission #14763812


Source Code Expand

#include<bits/stdc++.h>
using namespace std;
#define int long long
#define vi vector<int>
#define ff first
#define ss second
#define file_se_input  freopen("input.txt", "r", stdin); freopen("output.txt", "w", stdout);
#define pp long long int
#define setbits(x)      __builtin_popcountll(x)
#define zrobits(x)      __builtin_ctzll(x)
#define pb push_back
#define mp make_pair
#define pi 3.141592653589793238
#define eb emplace_back
#define rep(i,a,b) for (int i = a; i <= b; i++)
#define zip(i,a,b) for(int i=a;i<b;i++)
#define rzip(i,a,b) for(int i=a;i>=b;i--)
#define ll unsigned long long int
#define test int t;cin>>t; while(t--)
#define um unordered_map
#define en '\n'
#define us unordered_set
typedef pair<int, int>     pii;
typedef pair<char, int>    pci;
typedef pair<char, char>   pcc;
typedef vector<pii>       vii;
typedef long double ld;
#define all(v) v.begin(), v.end()
#define INF (1e18+5)
#define inf (1e9+5)
#define mod 1000000007


bool check_prime(long long n)
{
	int flag = 0;
	for (long long i = 2; i * i <= n; i++)
	{
		if (n % i == 0)
		{
			flag = 1;
			break;
		}
	}
	if (n == 1)
		return false;
	else if (flag == 0 || n == 2 || n == 3)
	{
		return true;
	}
	else
	{
		return false;
	}

}

int BE(int x, int n, int m) //function to calculate x raise to power n modulo m
{
	int result = 1;
	while (n > 0)
	{
		if (n % 2 == 1)
			result = result * x % m;
		x = x * x % m;
		n = n / 2;
	}
	return result;
}

int32_t main()
{
	ios_base::sync_with_stdio(false);
	cin.tie(NULL);
	cout.tie(0);
#ifndef ONLINE_JUDGE
	if (fopen("input.txt", "r"))
	{
		freopen ("input.txt" , "r" , stdin);
		freopen ("output.txt" , "w" , stdout);
	}
#endif
	//_______________________________-code starts-_______________________________________________


	int n, m, k;
	cin >> n >> m >> k;
	int a[n], b[m];
	zip(i, 0, n) cin >> a[i];
	zip(i, 0, m)  cin >> b[i];
	int cnt = 0;
	int i = 0, j = 0;
	while (i < n || j < m)
	{
		if (i < n && j < m)
		{
			if (a[i] < b[j])
			{
				if (k >= a[i])
				{
					k -= a[i];
					i++;
					cnt++;
					if (k <= 0)
						break;
				}
				else
				{
					break;
				}
			}
			else if (a[i] > b[j])
			{
				if (k >= b[j])
				{
					k -= b[j];
					j++;
					cnt++;
					if (k <= 0)
						break;
				}
				else
				{
					break;
				}
			}
			else
			{
				int x = a[i];
				int i1 = i;
				int j1 = j;
				int cnt1 = 0, cnt2 = 0;
				while (a[i1] == x && i1 < n - 1)
				{
					i1++;
					cnt1++;
					if (cnt1 >= 2)
						break;
				}
				while (b[j1] == x && j1 < m - 1)
				{
					j1++;
					cnt2++;
					if (cnt2 >= 2)
						break;
				}
				if (a[i1] < b[j1])
				{
					if (k >= a[i])
					{
						k -= a[i];
						i++;
						cnt++;
						if (k <= 0)
							break;
					}
					else
					{
						break;
					}
				}
				else if (a[i1] >= b[j1])
				{
					if (k >= b[j])
					{
						k -= b[j];
						j++;
						cnt++;
						if (k <= 0)
							break;
					}
					else
					{
						break;
					}
				}

			}
		}
		else if (i < n)
		{
			if (k >= a[i])
			{
				k -= a[i];
				i++;
				cnt++;
				if (k <= 0)
					break;
			}
			else
			{
				break;
			}
		}
		else if (j < m)
		{
			if (k >= b[j])
			{
				k -= b[j];
				j++;
				cnt++;
				if (k <= 0)
					break;
			}
			else
			{
				break;
			}
		}
		else
		{
			break;
		}
	}
	cout << cnt << en;


	return 0;
}

Submission Info

Submission Time
Task C - Tsundoku
User m_scofield
Language C++ (GCC 9.2.1)
Score 0
Code Size 3529 Byte
Status WA
Exec Time 45 ms
Memory 6756 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 300
Status
AC × 3
AC × 10
WA × 10
Set Name Test Cases
Sample a01.txt, a02.txt, a03.txt
All a01.txt, a02.txt, a03.txt, b04.txt, b05.txt, b06.txt, b07.txt, b08.txt, b09.txt, b10.txt, b11.txt, b12.txt, b13.txt, b14.txt, b15.txt, b16.txt, b17.txt, b18.txt, b19.txt, b20.txt
Case Name Status Exec Time Memory
a01.txt AC 8 ms 3624 KiB
a02.txt AC 4 ms 3484 KiB
a03.txt AC 2 ms 3424 KiB
b04.txt AC 2 ms 3544 KiB
b05.txt AC 44 ms 6564 KiB
b06.txt AC 41 ms 6700 KiB
b07.txt WA 6 ms 3600 KiB
b08.txt WA 40 ms 6612 KiB
b09.txt WA 24 ms 5196 KiB
b10.txt AC 26 ms 5100 KiB
b11.txt WA 20 ms 5220 KiB
b12.txt WA 30 ms 5892 KiB
b13.txt WA 36 ms 6592 KiB
b14.txt WA 42 ms 6756 KiB
b15.txt WA 38 ms 6644 KiB
b16.txt WA 38 ms 6720 KiB
b17.txt WA 45 ms 6556 KiB
b18.txt AC 41 ms 6552 KiB
b19.txt AC 43 ms 6696 KiB
b20.txt AC 28 ms 6644 KiB