#include <stdio.h>
inline unsigned page_of_byte(unsigned i)
{
return i >> 4;
}
inline unsigned pages_count(unsigned l, unsigned r)
{
return page_of_byte(r) - page_of_byte(l) + 1;
}
int main(void)
{
#define TEST(l,r,key) printf("%3d %3d %3d %3d %3c\n", l, r, pages_count(l,r), key, "-+"[pages_count(l,r)==key])
TEST( 1, 1, 1);
TEST( 1, 15, 1);
TEST( 1, 16, 2);
TEST(15, 15, 1);
TEST(15, 16, 2);
TEST(15, 17, 2);
TEST(16, 17, 1);
TEST(15, 31, 2);
TEST(15, 32, 3);
TEST(15, 33, 3);
return 0;
}