3523 2023. 02. 28 16:57:55 horvathabel Autókódolás cpp17 Hibás válasz 23/50 3ms 3772 KiB
#include <bits/stdc++.h>
using namespace std;
using ll=long long; 
int main() {
	ll n;
	cin>>n;
	vector<ll> kettes;
	ll cnt=0; 
	while (n>0){
		kettes.push_back(n%2);
		n/=2;
		cnt++; 
	}
	bool talalt=false;
	bool egyestalalt=false; 
	bool sorozat=true;
	vector<ll> mego;
	
	for (int i=0; i<cnt;i++){
		ll x=kettes[i];
		
		if (x==0 && (!talalt)){
		
			while (kettes[i]==0){
				i++; 
				mego.push_back(0);
			}		
			talalt=true;
			mego[mego.size()-1]=1;
			i--;
		}

		else{
			if (!egyestalalt && talalt){
				mego.push_back(0);
				egyestalalt=true;
			}

			else mego.push_back(x);
		}
	}
	reverse(mego.begin(),mego.end());
	if (!talalt or !egyestalalt){
		cout<<-1;
	}
	else{
		ll z=1;
		ll ans=0; 
		for (int i=cnt-1; i>=0;i--){
			if (mego[i]==1) ans+=z;
			z*=2; 
		}
	cout<<ans;
	}
	
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 23/50
1 Hibás válasz 0/0 3ms 1808 KiB
2 Hibás válasz 0/0 3ms 2152 KiB
3 Részben helyes 1/2 2ms 2232 KiB
4 Részben helyes 1/2 3ms 2360 KiB
5 Hibás válasz 0/2 3ms 2360 KiB
6 Hibás válasz 0/2 3ms 2556 KiB
7 Részben helyes 1/2 3ms 2680 KiB
8 Részben helyes 2/4 3ms 2808 KiB
9 Részben helyes 2/4 3ms 3016 KiB
10 Részben helyes 2/4 3ms 3064 KiB
11 Részben helyes 2/4 3ms 3192 KiB
12 Részben helyes 2/4 3ms 3280 KiB
13 Részben helyes 2/4 3ms 3428 KiB
14 Részben helyes 2/4 3ms 3472 KiB
15 Részben helyes 2/4 3ms 3560 KiB
16 Részben helyes 2/4 3ms 3684 KiB
17 Részben helyes 2/4 3ms 3772 KiB