您的位置:首页 > 房产 > 家装 > 在线定制手机壳_电脑网站模板_百度ai人工智能平台_宁波网站建设推广平台

在线定制手机壳_电脑网站模板_百度ai人工智能平台_宁波网站建设推广平台

2025/1/10 2:11:35 来源:https://blog.csdn.net/L3102250566/article/details/143053690  浏览:    关键词:在线定制手机壳_电脑网站模板_百度ai人工智能平台_宁波网站建设推广平台
在线定制手机壳_电脑网站模板_百度ai人工智能平台_宁波网站建设推广平台

文章目录

  • 回顾
  • 思路
  • c 语言代码

回顾

  • A+B III
  • 问题 H: 三角数
  • 问题 G: 3个数
  • 等式 数组下标查询,降低时间复杂度
  • 1405 问题 E: 世界杯
  • xtu 数码串
  • xtu oj 神经网络
  • xtu oj 1167 逆序数(大数据)

有一些题可能是往年的程设的题,现在搬到 c 语言题里面了,把一些 c++ 的代码改一下改成 c 的差不多就能过。有些程设的题可能是外国算法竞赛题翻译了一下拿过来的,所以写不出很正常,不要沮丧。(网上能搜到的程设的题解,笔者就不写了,我也不会写,有点无奈)

这里随便贴几个网上程设题解的链接

  • xtu oj 问题 D: 拼图
  • xtu oj 问题 H: 刷油漆
  • xtu oj 问题 L: 奇偶数位
  • xtu oj 问题 G: 完全平方数II
    这个题题目的名字改了一下,原来叫平方数
    在这里插入图片描述

有时候搜题解的时候,可以搜一搜题号,好像有些题改了一下题目的名字在这里插入图片描述

在这里插入图片描述
旧 oj :需要用校园网才能访问

算了,不管那么多,现在就先把这题拿下!

这题好像我没啥思路,等我问下朋友搞清楚了继续写。先试一下,要是能写出来就不问了。写了一下直接超时了。

我把我的超时代码贴在这儿,不知道为啥超时了,感觉只有 O(n) 的时间复杂度,不至于超时的呀。注意下面不是正确代码。

#include<stdio.h>
#include<stdbool.h>int a[100010];int main(){int p;while(scanf("%d",&p)){for(int i=1;i<100010;i++){a[i]=0;}int g=2;for(int i=1;i<=p-1;i++){a[g]=1;g*=2;g%=p;}bool flag=false;for(int i=1;i<=p-1;i++){if(a[i]==0){printf("No\n");flag=true;break;}}if(flag==false){printf("Yes\n");}}return 0;
}

思路

哈哈哈,把代码发给朋友,他告诉我加一个 EOF过了,我的思路就是直接模拟题意,bool 数组用来判断当前这个数字是不是出现了,出现了就标记为 1 ,奥其实这里用布尔数组更加明确一些,就是下标表示的是出现的这个数字,然后每一次都要取模,不取模容易超出存储范围,这里可能需要注意一个数学知识,就是一边做乘法一边取模,和对计算的结果取模结果是同一个。

其他的好像没有什么需要注意的。

这个题虽然写出来了,但是还有一个题还是没写出来,明天我再写一写,写不出来再去问朋友,一定要解决。

c 语言代码

#include<stdio.h>
#include<stdbool.h>int a[100010];int main(){int p;while(scanf("%d",&p)!=EOF){for(int i=1;i<100010;i++){a[i]=0;}int g=2;for(int i=1;i<=p-1;i++){a[g]=1;g*=2;g%=p;}bool flag=false;for(int i=1;i<=p-1;i++){if(a[i]==0){printf("No\n");flag=true;break;}}if(flag==false){printf("Yes\n");}}return 0;
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com