美文网首页
有趣的数学题

有趣的数学题

作者: byene | 来源:发表于2017-03-12 22:28 被阅读0次
  • UVA12716
  • UVA11582
UVA12716 GCD XOR
题解

参考
这题用到2个结论
a ^ b = c -----> a ^ c = b
a ^ b = gcd( a, b )----->a - b = gcd( a, b ),打表发现。。
设a - b = gcd( a, b ) = c, 枚举c。然后判断 a ^ c == a - c即可

代码
#include<cstdio>
#include<cstring>
using namespace std;
const int maxn = 30000000;

int cnt[ maxn + 10 ], sum[ maxn + 10 ];
int n, Cas, T;

void pre()
{
    for( int i = 1; i <= maxn / 2; i ++ )
    {
        for( int j = i + i; j <= maxn; j += i )
        {
            if( ( j ^ i ) == j - i ) cnt[ j ] ++;
        }
    }
    for( int i = 1; i <= maxn; i ++ ) sum[ i ] = sum[ i - 1 ] + cnt[ i ];
}

int main()
{
    memset( cnt, 0, sizeof( cnt ) );
    memset( sum, 0, sizeof( sum ) );
    pre();
    Cas = 0;
    scanf( "%d", &T );
    while( T -- )
    {
        scanf( "%d", &n );
        printf( "Case %d: %d\n", ++Cas, sum[ n ] );
    }
    return 0;
}

相关文章

  • 有趣的数学题

    晚上的时候,我做了一道有趣的数学题。就是达.芬奇出生于几年,如果是400到500就涂颜色。 当我一开始写,我还不知...

  • 有趣的数学题

    UVA12716 UVA11582 UVA12716 GCD XOR 题解 参考这题用到2个结论a ^ b = c...

  • 有趣的数学题

    文/王漫 读初中时,我读的是一所三流的农村初中。这所中学自创办以来,没有一名学生考上重点高中,同学们都很自卑。 尽...

  • 2019-01-15 两道有趣的离散数学题目

    原文链接:https://yanghan.life/2019/01/15/两道有趣的离散数学题目/ 有两道比较有趣...

  • 两道有趣的数学题

    第一题: 有人以每小时6公里的速度登上山顶,又以每小时12公里的速度原路下山。请问,他的平均速度是多少? 第...

  • 一道有趣的数学题

    晚上我在洗手间洗刷,硕在沙发上看书。 “妈妈,问你个问题啊,甲乙丙三人去住店,一晚上需要30元。他们每...

  • 一道有趣的数学题

    数学活动。5人一组,用计算器做一做,意一想。 (1)①号同学任意写一个三位数,交给②号同学。 (2)②号同学把这个...

  • 【暑假日记7】有趣的数学题

    在这个暑假里,你的作业里肯定有一些难题,今天我就来所以说我遇到的一个难题。 题目是这样的:从前有座山...

  • 有趣的数学题:这些钱该咋分?

    有一堆垃圾,规定要由张王李三户人家清理。张户因外出没能参加,留下9元钱做代劳费。王户上午起早干了5小时,李户下午接...

  • 一道数学题

    刚在《早报•校园》版看到一篇文章《一道数学题引发的讨论》,挺有趣的。 6÷2(1+2)=?” --- 答案是1或9...

网友评论

      本文标题:有趣的数学题

      本文链接:https://www.haomeiwen.com/subject/iamxnttx.html