CINTA 第一周选做题

CINTA 第一周选做题

第一章

对于任意 a 2 = 3 k + r a^2=3k+r a2=3k+r ,根据 除法原理: 对于任意数 x,都有 x = 3 q + b x=3q+b x=3q+b
那么 对于 x 2 = ( 3 q + b ) 2 = 9 q 2 + 6 q b + b 2 x^2=(3q+b)^2=9q^2+6qb+b^2 x2=(3q+b)2=9q2+6qb+b2 其中 b ∈ { 0 , 1 , 2 } b\in \{0,1,2\} b{0,1,2}
那么 b 2 ∈ { 0 , 1 , 4 } b^2\in\{0,1,4\} b2{0,1,4}, b 2 % 3 ∈ { 0 , 1 } b^2\%3\in\{0,1\} b2%3{0,1} 由此可得 x 2 = 3 k + r x^2=3k+r x2=3k+r,其中 r ∈ { 0 , 1 } r\in\{0,1\} r{0,1}.

#include<stdio.h>
#include<math.h>

bool Issqrt(int n){
    if(n%3==2){
        return false;
    }
    if(n%3==0&&n/3%3==0){
        return Issqrt(n/9);
    }
    else if(n%3==0){
        return false;
    }
    for(int i=0;pow((3*i+1),2)<=n;i++){
        if((3*i+1)*(3*i+1)==n||(3*i+2)*(3*i+2)==n){
            return true;
        }
    }
    return false;
}

int main(){
    int a;
    while(scanf("%d",&a)!=EOF){
        if(Issqrt(a)){
           printf("Yes\n");
        }
        else{
           printf("No\n");
        }
    }
    return 0;
}

对于任意 x = 1111 … … 1111 ⏟ n = a 2 x=\underbrace{1111……1111}_{n}=a^2 x=n 1111……1111=a2而言,x必然是奇数,a必然是奇数,令 a = 2 k + 1 a=2k+1 a=2k+1,则 a 2 = 4 k 2 + 4 k + 1 , k ∈ Z a^2=4k^2+4k+1,k\in Z a2=4k2+4k+1,kZ。而对于形如 1111....1111 ⏟ n = x \underbrace{1111....1111}_{n}=x n 1111....1111=x而言, ( x − 1 ) / 4 = 555 … … 555 ⏟ n − 1 / 2 ≠ k 2 + k (x-1)/4=\underbrace{555……555}_{n-1}/2\neq k^2+k (x1)/4=n1 555……555/2=k2+k因为前者是小数,后者是整数,矛盾。

第二章

假设 g c d ( a , b ∗ c ) ≠ 1 gcd(a,b*c)\neq1 gcd(a,bc)=1, g c d ( a , b ∗ c ) = x gcd(a,b*c)=x gcd(a,bc)=x
那么必然有 x ∣ a , x ∣ b 或 x ∣ c 或 c ∣ x 或 b ∣ x x|a,x|b或x|c或c|x或b|x xa,xbxccxbx
则分别有 g c d ( a , b ) = x 或 g c d ( a , c ) = x 或 g c d ( a , c ) = c 或 g c d ( a , b ) = b gcd(a,b)=x或gcd(a,c)=x或gcd(a,c)=c或gcd(a,b)=b gcd(a,b)=xgcd(a,c)=xgcd(a,c)=cgcd(a,b)=b
与题目矛盾。因此 g c d ( a , b ∗ c ) = 1 gcd(a,b*c)=1 gcd(a,bc)=1

由上一题可知 g c d ( a , b ) = 1 , g c d ( a , c ) = 1 gcd(a,b)=1,gcd(a,c)=1 gcd(a,b)=1,gcd(a,c)=1可知 g c d ( a , b ∗ c ) = 1 gcd(a,b*c)=1 gcd(a,bc)=1
g c d ( a , b ) = 1 gcd(a,b)=1 gcd(a,b)=1,可得 g c d ( a , b 2 ) = 1 gcd(a,b^2)=1 gcd(a,b2)=1,同理可得 g c d ( a , b n ) = 1 gcd(a,b^n)=1 gcd(a,bn)=1

由上一题可知 g c d ( a , b ) = 1 , g c d ( a , c ) = 1 gcd(a,b)=1,gcd(a,c)=1 gcd(a,b)=1,gcd(a,c)=1可知 g c d ( a , b ∗ c ) = 1 gcd(a,b*c)=1 gcd(a,bc)=1
g c d ( a , b ) = g c d ( b , a ) = 1 gcd(a,b)=gcd(b,a)=1 gcd(a,b)=gcd(b,a)=1,
可得 g c d ( b , a 2 ) = 1 , g c d ( a 2 , b ) = 1 gcd(b,a^2)=1,gcd(a^2,b)=1 gcd(b,a2)=1,gcd(a2,b)=1
可得 g c d ( a 2 , b 2 ) = 1 gcd(a^2,b^2)=1 gcd(a2,b2)=1
g c d ( a n , b n ) = 1 gcd(a^n,b^n)=1 gcd(an,bn)=1

假设
g c d ( a , b ) ∗ x = a gcd(a,b)*x=a gcd(a,b)x=a
g c d ( a , b ) ∗ y = b gcd(a,b)*y=b gcd(a,b)y=b
可得, g c d ( x , y ) = 1 gcd(x,y)=1 gcd(x,y)=1
由上一题可得 g c d ( x d , y d ) = 1 gcd(x^d,y^d)=1 gcd(xd,yd)=1
g c d ( a , b ) d ∗ x d = a d gcd(a,b)^d*x^d=a^d gcd(a,b)dxd=ad g c d ( a , b ) d ∗ y d = b d gcd(a,b)^d*y^d=b^d gcd(a,b)dyd=bd
可得 g c d ( a d , b d ) = g c d ( a , b ) d gcd(a^d,b^d)=gcd(a,b)^d gcd(ad,bd)=gcd(a,b)d
证明完毕。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值