답안 #73097

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
73097 2018-08-27T16:07:33 Z Pajaraja 비교 (balkan11_cmp) C++17
0 / 100
1220 ms 103216 KB
#include "cmp.h"
#include <bits/stdc++.h>
using namespace std;
void remember(int n) 
{
	int poc[6]={1,4500,6000,6500,7000,7500},c[6],p[7];
	p[6]=0;
	for(int i=0;i<6;i++) c[i]=2*(((1<<(2*i+1)) & n)>>(2*i+1)) + (((1<<(2*i)) & n)>>(2*i));
	for(int i=5;i>=0;i--) p[i]=4*p[i+1]+c[i];
	for(int i=0;i<6;i++) bit_set(poc[i]+p[i]);
}
int compare(int b)
{
	int poc[6]={1,4500,6000,6500,7000,7500},c[6],p[7];
	p[6]=0;
	for(int i=0;i<6;i++) c[i]=2*(((1<<(2*i+1)) & b)>>(2*i+1)) + (((1<<(2*i)) & b)>>(2*i));
	for(int i=5;i>=0;i--) p[i]=4*p[i+1]+c[i];
	int x=0;
	while(bit_get(poc[x]+p[x]) && x<6) x++;
	if(x==6) return 0;
	if(c[x]==0) return -1;
	if(c[x]==3) return 1;
	if(c[x]==1)
	{
		if(poc[x]+p[x]-(1<<(2*x))) return 1;
		else return -1;
	}
	if(poc[x]+p[x]+(1<<(2*x))) return -1;
	else return 1;
}
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1220 ms 103216 KB ZERO POINTS: For a=3040 and b=3318, correct answer is 1, got -1