Submission #728422

# Submission time Handle Problem Language Result Execution time Memory
728422 2023-04-22T11:21:56 Z beaconmc Packing Biscuits (IOI20_biscuits) C++14
12 / 100
3 ms 316 KB
#include "biscuits.h"

#include <bits/stdc++.h>
//#include <ext/pb_ds/assoc_container.hpp>
//#include <ext/pb_ds/tree_policy.hpp>

typedef long long ll;
using namespace std;
//using namespace __gnu_pbds;

#define FOR(i, x, y) for(ll i=x; i<y; i++)
#define FORNEG(i, x, y) for(ll i=x; i>y; i--)
//#define ordered_set tree<ll, null_type,less_equal<ll>, rb_tree_tag,tree_order_statistics_node_update>
#define fast() ios_base::sync_with_stdio(false);cin.tie(NULL)


long long count_tastiness(long long x, vector<long long> a) {
	vector<ll> sus;
	ll cur = 0;
	FOR(i,0,200){
		if (i < a.size()){
			cur += a[i];
		}
		if (cur==0){
			sus.push_back(0);
			continue;
		}
		if (cur%2==0){
			sus.push_back(2);
			cur-= 2;
			cur /= 2;
		}else{
			sus.push_back(1);
			cur -= 1;
			cur /= 2;
		}
	}
	reverse(sus.begin(), sus.end());
	sus.push_back(0);
	ll megaans = 1;
	ll ans = 1;
	FOR(i,0,sus.size()){
		if (sus[i] != 0) ans= max(ans, (ll)1);

		if (sus[i] == 2){
			ans *= 2;
			ans++;
		}else if (sus[i] == 1){
			ans *= 2;
		}else{
			megaans *= max(ans,(ll)1);
			ans = 0;
		}
	}

	return megaans;
}

Compilation message

biscuits.cpp: In function 'long long int count_tastiness(long long int, std::vector<long long int>)':
biscuits.cpp:21:9: warning: comparison of integer expressions of different signedness: 'll' {aka 'long long int'} and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   21 |   if (i < a.size()){
      |       ~~^~~~~~~~~~
biscuits.cpp:11:35: warning: comparison of integer expressions of different signedness: 'll' {aka 'long long int'} and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   11 | #define FOR(i, x, y) for(ll i=x; i<y; i++)
......
   42 |  FOR(i,0,sus.size()){
      |      ~~~~~~~~~~~~~~                
biscuits.cpp:42:2: note: in expansion of macro 'FOR'
   42 |  FOR(i,0,sus.size()){
      |  ^~~
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Incorrect 1 ms 212 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 1 ms 212 KB Output is correct
4 Correct 1 ms 212 KB Output is correct
5 Correct 1 ms 212 KB Output is correct
6 Correct 1 ms 212 KB Output is correct
7 Correct 1 ms 212 KB Output is correct
8 Correct 1 ms 212 KB Output is correct
9 Correct 1 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 212 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 3 ms 316 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Incorrect 1 ms 212 KB Output isn't correct
3 Halted 0 ms 0 KB -