分拆素数和
Time Limit: / MS (Java/Others) Memory Limit: / K (Java/Others)
Total Submission(s): Accepted Submission(s): Problem Description
把一个偶数拆成两个不同素数的和,有几种拆法呢? Input
输入包含一些正的偶数,其值不会超过10000,个数不会超过500,若遇0,则结束。 Output
对应每个偶数,输出其拆成不同素数的个数,每个结果占一行。 Sample Input Sample Output Source
2007省赛集训队练习赛()

题是水题.....但是 就是写不成.总是超时..还是一些技巧不知道 下面附上原始的800ms

/*
和最初写的程序比较起来....这个 比较容易看懂
上一个自己就把自己写晕了
*/
#include<stdio.h>
int prime(int x);
int main()
{
int n,i,j,m,a,b,c;
while(scanf("%d",&n),n)
{
int jishu=;
for(i=;i<n/;i++)
{
j=n-i;
if(prime(i)==&&prime(j)==)
{
jishu++;
}
}
printf("%d\n",jishu);
}
}
int prime(int a)
{
int i,t=;
for(i=;i<=a/;i++)//将输入进来的数字 开始检查.
{
if(a%i==) //在这里没有 加括号...
{
t=;
break; // 跳出去
}
}
return t; }

下面带上 200ms  直接缩小4倍时间的  代码并且 给出  改动的地方

/*
和最初写的程序比较起来....这个 比较容易看懂
上一个自己就把自己写晕了
*/
#include<stdio.h>
#include<math.h>
int prime(int x);
int main()
{
int n,i,j,m,a,b,c;
while(scanf("%d",&n),n)
{
int jishu=;
for(i=;i<n/;i++)
{
j=n-i;
if(prime(i)==&&prime(j)==)
{
jishu++;
}
}
printf("%d\n",jishu);
}
}
int prime(int a)
{
int i,t=;
for(i=;i<=sqar(a);i++)// 唯一改动的地方 (求是不是素数的时候开平方 这样 能减少 很多运算....时间就是乳沟一样 这里挤挤那里挤挤就有了....)
{
if(a%i==) //在这里没有 加括号...
{
t=;
break; // 跳出去
}
}
return t; }

______________从时间超限到800ms 到200ms——————2098的更多相关文章

  1. POJ-2236 Wireless Network 顺便讨论时间超限问题

    Wireless Network Time Limit: 10000MS   Memory Limit: 65536K Total Submissions: 26131   Accepted: 108 ...

  2. 记一次SQL性能优化,查询时间从4000ms优化到200ms.

    以下这句SQL是从PLM中获取代办工作流的.没优化前SQL语句执行一次大概4000ms(4秒). select ch.change_number changeNumber, f.text change ...

  3. 时间超限问题处理(c++)

    c++中 如果时间超上限 做题上: 考虑关于二进制的方法 比如说 find your present (2) 这道题 可以用异或运算 来发现不重复数 对于动态规划 状态压缩发面 方面应用更多 比如说p ...

  4. Kafka解惑之时间轮 (TimingWheel)

    Kafka中存在大量的延迟操作,比如延迟生产.延迟拉取以及延迟删除等.Kafka并没有使用JDK自带的Timer或者DelayQueue来实现延迟的功能,而是基于时间轮自定义了一个用于实现延迟功能的定 ...

  5. Rescue(BFS时间最短 另开数组或优先队列)

    Angel was caught by the MOLIGPY! He was put in prison by Moligpy. The prison is described as a N * M ...

  6. [leetcode] 5.Longest Palindromic Substring-1

    开始觉得挺简单的 写完发现这个时间超限了: class Solution: def longestPalindrome(self, s: str) -> str: # longest palin ...

  7. Elasticsearch一些使用笔记(持续更新)

    这篇博客记录这一些运维ES的一些经验. 1.节点磁盘使用率过高,导致ES集群shard无法分配,丢失数据? 有两个配置,分配副本的时候 参数名称 默认值 含义 cluster.routing.allo ...

  8. 慢SQL优化:where id in (select max(id)...) 改为join后性能提升400倍

    背景 有两张表,都是主键递增,类似于主表和明细表: statistics_apply:统计申请表,主键applyId,7万多条记录 statistics_apply_progress:统计申请进度表( ...

  9. Android 防止控件被重复点击

    转载: 工具类: public class Utils { private static long lastClickTime; public static boolean isFastDoubleC ...

随机推荐

  1. 《gis空间分析及应用案例解析》培训总结

    <gis空间分析及应用案例解析>培训总结 来源:常德水情 作者:唐校准 发布日期:2014-01-02       2013年12月2630日由中国科学院计算技术研究所教育中心组织的< ...

  2. dnsmasq possible DNS-rebind attack detected错误

    最近在做openwrt的平台,dns使用的是dnsmasq,但是通过板子上网,将PC的dns设置成板子的时候,发现百度等都可以,但是公司邮箱打不开.公司邮箱的域名 xx-xx-notes.xxx.co ...

  3. 【转】Wireshark技巧-过滤规则和显示规则

    原文: http://www.cnblogs.com/icez/p/3973873.html ----------------------------------------------------- ...

  4. react 组件之间传值

    谈及React时,就会想到一个很重要的思想,就是组件化思想.它将可以重用的部分进行组件化开发,形成一个个相对独立的组件,那么组件化后,你也会提出些疑问,组件与组件之间,将怎样进行信息的传递呢?下面来介 ...

  5. Linux下获取线程TID的方法

    如何获取进程的PID(process ID)? 可以使用: #include <unistd.h> pid_t getpid(void); 通过查看头文件说明,可以得到更详细的信息: fi ...

  6. 责任链模式的具体应用 ServiceStack.Redis订阅发布服务的调用

    责任链模式的具体应用   1.业务场景 生产车间中使用的条码扫描,往往一把扫描枪需要扫描不同的条码来处理不同的业务逻辑,比如,扫描投入料工位条码.扫描投入料条码.扫描产出工装条码等,每种类型的条码位数 ...

  7. Linux下kill命令的学习,(主要根据man手册进行的翻译)

    名字      kill -终止一个进程 格式     kill  [-s signal | -p]  [--] pid ..                                      ...

  8. How to: Use Submix Voices

    How to: Use Submix Voices:https://msdn.microsoft.com/en-us/library/windows/desktop/ee415794(v=vs.85) ...

  9. SpringBoot项目报错Cannot determine embedded database driver class for database type NONE

    原因: Cannot determine embedded database driver class for database type NONE 这是因为spring boot默认会加载org.s ...

  10. react-loadable 进行代码分割的基本使用

    由上篇文章我们可以知道,我的项目,打包后的 js 是 7M 的,首屏就加载 7M 的文件虽然没什么特别大的缺点,但总不是最优的解决办法 因此我们用到了 react-router4 的 react-lo ...