风雪心 2022-12-31 17:08 采纳率: 91.7%
浏览 59

在PTA中运行C语言代码显示运行超时如何解决?

请问一下,在PTA里面,对于要按照问题要求输出这样的一个同构数,如果系统显示我的代码运行超时,我应该怎么去优化一下呢?

img

#include<stdio.h>
int main()
{
    int n;
    int i,j=0,tail;
    long long sum;
    scanf("%d",&n);
    for(i=n+1;i<5000;i++)
    {
        while(i>0)
        {
            i/=10;
            j++;
        }
        sum=i*i;
        while(j>0)
        {
            tail=sum%10;
            sum/=10;
            j--;
        }
        if(tail==n) break;
    }
    printf("%d",n);
    return 0;
}

img

  • 写回答

3条回答 默认 最新

  • |__WhoAmI__| 2022-12-31 17:21
    关注
    #include<stdio.h>
    
    int main()
    {
        int n;
        scanf("%d", &n);
    
        // 预处理出每个数的位数和尾数
        int nums[10000];
        for (int i = 0; i < 10000; i++)
        {
            int num = i + n + 1;
            int digits = 0;
            int tail = 0;
            while (num > 0)
            {
                digits++;
                tail = num % 10;
                num /= 10;
            }
            nums[i] = tail;
        }
    
        // 在循环中直接使用预处理的信息
        for (int i = 0; i < 10000; i++)
        {
            if (nums[i] == n)
            {
                printf("%d", i + n + 1);
                return 0;
            }
        }
    
        return 0;
    }
    

    仅供参考,望采纳。

    评论

报告相同问题?

问题事件

  • 请采纳用户回复 12月31日
  • 创建了问题 12月31日

悬赏问题

  • ¥30 关于#微信#的问题:微信实名不绑卡 可以实现吗 有没有专家 可以解决
  • ¥15 (标签-考研|关键词-set)
  • ¥15 求修改代码,图书管理系统
  • ¥15 请问有没求偏多标签数据集yeast,reference,recreation,scene,health数据集。
  • ¥15 传感网应用开发单片机实训
  • ¥15 Delphi 关于sAlphaImageList使用问题
  • ¥15 寻找将CAJ格式文档转txt文本的方案
  • ¥15 shein测试开发会问些啥我是写java的
  • ¥15 关于#单片机#的问题:我有个课程项目设计,我想在STM32F103veTX单片机,M3主控模块上设计一个程序,在Keil uVision5(C语言)上代码该怎么编译?(嫌钱少我可以加钱,急急急)
  • ¥15 opnet仿真网络协议遇到问题