HDU 4394Digital Square

本文深入探讨了深度学习在人工智能领域的应用,包括卷积神经网络、循环神经网络、自动推理系统等关键技术,并展示了这些技术在自动驾驶、图像处理、自然语言处理等实际场景中的应用案例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Digital Square

Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 32768/32768K (Java/Other)
Total Submission(s) : 10   Accepted Submission(s) : 6
Problem Description
Given an integer N,you should come up with the minimum nonnegative integer M.M meets the follow condition: M2%10x=N (x=0,1,2,3....)
 

Input
The first line has an integer T( T< = 1000), the number of test cases. For each case, each line contains one integer N(0<= N <=10[sup]9[/sup]), indicating the given number.
 

Output
For each case output the answer if it exists, otherwise print “None”.
 

Sample Input
3 3 21 25
 

Sample Output
None 11 5
 

Source
2012 Multi-University Training Contest 10
 

简单搜索题,判断几位数相乘后对余数没有影响就好


#include<iostream>
#include<cstdio>
#include<cstring>
#include<queue>
using namespace std;

int t,n;
long long Mod;

struct node
{
    long long num;
    long long ten;
    friend bool operator < (node a,node b)
    {
        return a.num>b.num;
    }
} a,b;

void bfs()
{
    priority_queue<node>q;
    int num=n%10;
    for(int i=0; i<10; i++)
        if(i*i%10==num)
        {
            a.num=i;
            a.ten=10;
            q.push(a);
        }
    while(q.size())
    {
        a=q.top();
        if(a.num*a.num%Mod==n)
        {
            cout<<a.num<<endl;
            return ;
        }
        q.pop();
        for(long long i=0; i<10; i++)
        {
            b.num=a.num+i*a.ten;
            b.ten=a.ten*10;
            if(b.num*b.num%b.ten==n%b.ten)
            {
                q.push(b);
            }
        }
    }
    cout<<"None"<<endl;
    return ;
}

int main()
{
    scanf("%d",&t);
    while(t--)
    {
        cin>>n;
        int nn=n;
        Mod=1;
        while(nn)
        {
            Mod*=10;
            nn/=10;
        }
        bfs();
    }
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值