______________从时间超限到800ms 到200ms——————2098
分拆素数和
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的更多相关文章
- POJ-2236 Wireless Network 顺便讨论时间超限问题
Wireless Network Time Limit: 10000MS Memory Limit: 65536K Total Submissions: 26131 Accepted: 108 ...
- 记一次SQL性能优化,查询时间从4000ms优化到200ms.
以下这句SQL是从PLM中获取代办工作流的.没优化前SQL语句执行一次大概4000ms(4秒). select ch.change_number changeNumber, f.text change ...
- 时间超限问题处理(c++)
c++中 如果时间超上限 做题上: 考虑关于二进制的方法 比如说 find your present (2) 这道题 可以用异或运算 来发现不重复数 对于动态规划 状态压缩发面 方面应用更多 比如说p ...
- Kafka解惑之时间轮 (TimingWheel)
Kafka中存在大量的延迟操作,比如延迟生产.延迟拉取以及延迟删除等.Kafka并没有使用JDK自带的Timer或者DelayQueue来实现延迟的功能,而是基于时间轮自定义了一个用于实现延迟功能的定 ...
- Rescue(BFS时间最短 另开数组或优先队列)
Angel was caught by the MOLIGPY! He was put in prison by Moligpy. The prison is described as a N * M ...
- [leetcode] 5.Longest Palindromic Substring-1
开始觉得挺简单的 写完发现这个时间超限了: class Solution: def longestPalindrome(self, s: str) -> str: # longest palin ...
- Elasticsearch一些使用笔记(持续更新)
这篇博客记录这一些运维ES的一些经验. 1.节点磁盘使用率过高,导致ES集群shard无法分配,丢失数据? 有两个配置,分配副本的时候 参数名称 默认值 含义 cluster.routing.allo ...
- 慢SQL优化:where id in (select max(id)...) 改为join后性能提升400倍
背景 有两张表,都是主键递增,类似于主表和明细表: statistics_apply:统计申请表,主键applyId,7万多条记录 statistics_apply_progress:统计申请进度表( ...
- Android 防止控件被重复点击
转载: 工具类: public class Utils { private static long lastClickTime; public static boolean isFastDoubleC ...
随机推荐
- Java多线程分析案例
1. 多线程的创建方式 (1).继承 Thread类:但Thread本质上也是实现了Runnable 接口的一个实例,它代表一个线程的实例,并且,启动线程的唯一方法就是通过 Thread 类的 sta ...
- Java面试题总结(一)---Java基础
Java面试题总结(一)---Java基础 1.面向对象的特征有哪些? 答:面向对象的特征主要有以下几个: 1)抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方 ...
- Ubuntu 16.04安装双显卡驱动方法收集
说明:不一定有效,要不断尝试. http://www.linuxwang.com/html/2150.html http://blog.csdn.net/feishicheng/article/det ...
- 拷贝地图 CopyAndOverwriteMap()
private void CopyAndOverwriteMap() { //Get IObjectCopy interface IObjectCopy objectCopy = new Object ...
- Swift初体验之HelloWord+苹果Swift编程语言新手教程【中文版】
AppDelegate.swift : <span style="font-size:24px;"><strong>// // AppDelegate.sw ...
- 系统重装 Ghost系统的disk to image等等是什么意思
localdiskto disk to imade from imagepartitionto partition to image from imagecheckimage file disk这些是 ...
- 题目1011:最大连续子序列 O(n)
题目大意:给出一系列的数字.要求你输出这些数字的最大连续和,并输出构成这个最大连续和的第一个数和最后一个数 解题思路:用一个变量维护最大连续和 假设当前这个变量小于0的话,就表示这个变量仅仅会拉低连续 ...
- vue 定义全局函数
方法一:main.js 注入 (1)在main.js中写入函数 Vue.prototype.changeData = function (){ alert('执行成功'); } (2)在所有组件里可调 ...
- react 组件之间传值
谈及React时,就会想到一个很重要的思想,就是组件化思想.它将可以重用的部分进行组件化开发,形成一个个相对独立的组件,那么组件化后,你也会提出些疑问,组件与组件之间,将怎样进行信息的传递呢?下面来介 ...
- Spring Boot Spring 自动配置
Spring Boot 不是应用服务器: Spring Boot没有实现诸如JPA.JMS(Java Message Service)之类的Java企业级规范: Spring Boot没有引入任何形式 ...