欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

X Round 2(毒瘤比赛qwq)

程序员文章站 2022-05-15 16:15:50
[TOC] 大佬说 幻想与真实 预计分数:$100+0+0+0+0+0=100.$ 实际分数:$0+0+0+0+0+0=0$ 【XR 2】缘分 题目 "戳" 思路 $gcd(a,b) lcm(a,b)=a b$ 当 $gcd==1$ 时 $lcm$ 最大等于$a b$,而想要$gcd==1$要满足的 ......

大佬说X Round 2(毒瘤比赛qwq)

幻想与真实

预计分数:$100+0+0+0+0+0=100.$
实际分数:$0+0+0+0+0+0=0$

【xr-2】缘分

题目

思路

$gcd(a,b) * lcm(a,b)=a * b$

当 $gcd==1$ 时 $lcm$ 最大等于$a * b$,而想要$gcd==1$要满足的条件是$a⊥b$。
所以是求小于等于$n$的最大的两个不相等的质数(如果相等的话最后的答案就是小于等于$n$的最大的质数(将这个数称为$x$),这个数肯定小于$x * 2$。
所以思路应该正确,$qwq$。

code

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<algorithm>
using namespace std;
int t;
int test[15]= {2,7,61};
unsigned long long temp[3];
inline int read(){
    int x=0;
    bool f=0;
    char c=getchar();
    while(c<'0'||c>'9'){if(c=='-')f=!f;c=getchar();}
    while(c>='0'&&c<='9'){x=x*10+c-'0';c=getchar();}
    return f?-x:x;
}//读入优化
inline void write(unsigned long long x){
    if(x/10) write(x/10);
    putchar(x%10+'0');
}//输出优化
inline long long qpow(int a,int b,int c) {//快速幂。不会的可以去做一下p1226 
    if(b==0) return 1%c;
    long long ans=1,base=a;
    while(b) {
        if(b & 1) ans*=base;
        ans%=c;
        base*=base;
        base%=c;
        b>>=1;
    }
    return ans;
}
inline bool mb(int p) {//miller-rabin算法。 
    if(p==1) return 0;
    if(p==2) return 1;
    int t=p-1,k=0;
    while(!(t&1)) {
        k++;
        t>>=1;
    }
    for(int i=0;i<=2;++i) {
        if(p==test[i]) return 1;
        long long a=qpow(test[i],t,p),nx=a;
        for(int j=1;j<=k;++j) {
            nx=(a*a)%p;
            if(nx==1&&a!=1&&a!=p-1) return 0;
            a=nx;
        }
        if(a!=1) return 0;
    }
    return 1;
}

int main(){
    t=read();
    int n;
    while(t--){
        n=read();
        int sum=0;
        for(int i=n;i>=1;--i){
            if(mb(i)){
                temp[++sum]=i;
                if(sum==2) break;
            }
        }
        if(temp[1]*temp[2]==0) printf("0");
        write(temp[1]*temp[2]);
        puts("");
    }
    return 0;
}

现实永远是残酷的

提交之后全$wa$,只能慢慢差错了(思路应该没错吧,$qwq$)。

$error1$

没有特判$n==1$的情况。然后加上继续$wa,qwq$。(我太菜了这题果然毒瘤。)

$jio$的自己太菜

不用快读和快输了,改成$scanf() & printf()$。继续$wa$。

$error2$

没有特判$n==0$的情况。然后加上继续$wa,qwq$。

$error3$

思路错了,qwq

【xr-2】奇迹

题目

思路

$n/a$

code

n/a

【xr-2】伤痕

题目

思路

$n/a$

code

n/a

【xr-2】约定

题目

思路

$n/a$

code

n/a

【xr-2】记忆

题目

思路

$n/a$

code

n/a

【xr-2】永恒

题目

思路

$n/a$

code

n/a