用户登录
用户注册

分享至

X Round 2(毒瘤比赛qwq)

  • 作者: 老衲终于硬了
  • 来源: 51数据库
  • 2021-10-04

目录

  • 【xr-2】缘分
    • code
  • 【xr-2】奇迹
    • code
  • 【xr-2】伤痕
    • code
  • 【xr-2】约定
    • code
  • 【xr-2】记忆
    • code
  • 【xr-2】永恒
    • code

大佬说

幻想与真实

预计分数:$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

软件
前端设计
程序设计
Java相关