Submission #1077312

# Submission time Handle Problem Language Result Execution time Memory
1077312 2024-08-27T05:09:58 Z thelegendary08 Broken Device (JOI17_broken_device) C++17
51 / 100
26 ms 2900 KB
#include "Annalib.h"
#include<bits/stdc++.h>
#define f0r(i,n) for(int i = 0; i<n;i++)
#define pb push_back
#define vb vector<bool>
#define vi vector<int>
using namespace std;
void Anna( int n, long long x, int k, int p[] ){
	vector<bool>broken(n);
	f0r(i, k){
		broken[p[i]] = 1;
	}
	vb ret(n, 0);
	vb v;
	f0r(i, 60){
		v.pb((1LL<<i) & x);
	}
	//for(auto u : v)cout<<u<<' ';
	//cout<<'\n';
	int i = 0;
	int ptr = 0;
	while(i < n-2 && ptr < 60){
		if(!broken[i] && !broken[i+1] && !broken[i+2]){
			ret[i] = 1;
			ret[i+1] = v[ptr];
			ret[i+2] = v[ptr + 1];
			ptr += 2;
			i += 3;
		}
		else i++;
	}
	f0r(i, n){
		Set(i, ret[i]);
	}
}
#include "Brunolib.h"
#include<bits/stdc++.h>
#define f0r(i,n) for(int i = 0; i<n;i++)
#define pb push_back
#define vb vector<bool>
#define vi vector<int>
using namespace std;
long long Bruno( int n, int A[] ){
	//for(int i = 0; i<N;i++)cout<<A[i]<<' ';
	//cout<<'\n';
  	long long ret = 0;
  	vb ans;
  	int ptr = 0;
  	while(ptr < n - 2){
  		if(A[ptr] == 1){
  			ans.pb(A[ptr + 1]);
  			ans.pb(A[ptr + 2]);
  			ptr += 3; 
  		}
  		else ptr++;
  	}
  	f0r(i, ans.size()){
  		ret += ans[i] * (1LL << i);
  	}
  	//cout<<ret;
  	return ret;
}

Compilation message

Bruno.cpp: In function 'long long int Bruno(int, int*)':
Bruno.cpp:3:34: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<bool>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
    3 | #define f0r(i,n) for(int i = 0; i<n;i++)
......
   22 |    f0r(i, ans.size()){
      |        ~~~~~~~~~~~~~              
Bruno.cpp:22:4: note: in expansion of macro 'f0r'
   22 |    f0r(i, ans.size()){
      |    ^~~
# Verdict Execution time Memory Grader output
1 Partially correct 20 ms 2396 KB Output is partially correct - L* = 20
2 Partially correct 23 ms 2396 KB Output is partially correct - L* = 20
3 Partially correct 22 ms 2428 KB Output is partially correct - L* = 21
4 Partially correct 23 ms 2484 KB Output is partially correct - L* = 20
5 Partially correct 22 ms 2392 KB Output is partially correct - L* = 20
6 Partially correct 25 ms 2304 KB Output is partially correct - L* = 20
7 Partially correct 23 ms 2396 KB Output is partially correct - L* = 20
8 Partially correct 24 ms 2392 KB Output is partially correct - L* = 20
9 Partially correct 23 ms 2488 KB Output is partially correct - L* = 20
10 Partially correct 24 ms 2396 KB Output is partially correct - L* = 21
11 Partially correct 24 ms 2396 KB Output is partially correct - L* = 20
12 Partially correct 22 ms 2400 KB Output is partially correct - L* = 21
13 Partially correct 26 ms 2604 KB Output is partially correct - L* = 20
14 Partially correct 23 ms 2392 KB Output is partially correct - L* = 20
15 Partially correct 23 ms 2612 KB Output is partially correct - L* = 20
16 Partially correct 24 ms 2372 KB Output is partially correct - L* = 21
17 Partially correct 23 ms 2396 KB Output is partially correct - L* = 20
18 Partially correct 22 ms 2404 KB Output is partially correct - L* = 20
19 Partially correct 23 ms 2396 KB Output is partially correct - L* = 22
20 Partially correct 23 ms 2396 KB Output is partially correct - L* = 21
21 Partially correct 24 ms 2580 KB Output is partially correct - L* = 20
22 Partially correct 23 ms 2388 KB Output is partially correct - L* = 20
23 Partially correct 24 ms 2480 KB Output is partially correct - L* = 20
24 Partially correct 22 ms 2392 KB Output is partially correct - L* = 21
25 Partially correct 23 ms 2376 KB Output is partially correct - L* = 21
26 Partially correct 25 ms 2456 KB Output is partially correct - L* = 20
27 Partially correct 23 ms 2392 KB Output is partially correct - L* = 20
28 Partially correct 24 ms 2900 KB Output is partially correct - L* = 21
29 Partially correct 23 ms 2400 KB Output is partially correct - L* = 20
30 Partially correct 23 ms 2400 KB Output is partially correct - L* = 20
31 Partially correct 24 ms 2400 KB Output is partially correct - L* = 20
32 Partially correct 23 ms 2404 KB Output is partially correct - L* = 20
33 Partially correct 24 ms 2396 KB Output is partially correct - L* = 20
34 Partially correct 23 ms 2396 KB Output is partially correct - L* = 20
35 Partially correct 22 ms 2396 KB Output is partially correct - L* = 20
36 Partially correct 23 ms 2400 KB Output is partially correct - L* = 21
37 Partially correct 26 ms 2472 KB Output is partially correct - L* = 20
38 Partially correct 23 ms 2484 KB Output is partially correct - L* = 20
39 Partially correct 22 ms 2392 KB Output is partially correct - L* = 21
40 Partially correct 23 ms 2392 KB Output is partially correct - L* = 21