基础算法练习200题12、统计奇偶数

举报
红目香薰 发表于 2022/08/31 15:58:03 2022/08/31
【摘要】 ​ ​编辑📋前言📋💝博客:【红目香薰的博客_CSDN博客-计算机理论,2022年蓝桥杯,MySQL领域博主】💝✍本文由在下【红目香薰】原创,首发于CSDN✍🤗2022年最大愿望:【服务百万技术人次】🤗💝专栏地址:【https://blog.csdn.net/feng8403000/category_11958599.html】💝       为了帮助很多想搞算法但又害怕自己搞...

 编辑


📋前言📋
💝博客:【红目香薰的博客_CSDN博客-计算机理论,2022年蓝桥杯,MySQL领域博主】💝

✍本文由在下【红目香薰】原创,首发于CSDN✍

🤗2022年最大愿望:【服务百万技术人次】🤗

💝专栏地址:【https://blog.csdn.net/feng8403000/category_11958599.html】💝 


      为了帮助很多想搞算法但又害怕自己搞不定的孩子们,老师付准备了200个入门的逻辑练习题,在这200个逻辑练习题下可以加强你们的基础算法能力,以次为基础当面对正式的算法题目的时候可以得心应手的面对。 

题目:

输入一个数n,计算1到n(包含n)之间有多少个奇数、多少个偶数。

先输出奇数数量,后输出偶数数量。

输入样例1:11

输出样例1:6 5

数据范围:1-10^15

分析:

这个范围要求很大,那么类型肯定得用long类型。看情况计算。暴力肯定能行,就是会超时。

暴力编码:(大概处理10亿还是可以的)

package com.item.action;

import java.util.Scanner;

/**
 * 
 * @author hongmuxiangxun 红目香薰 付文龙 老师付 laoshifu
 *
 */
public class demo12 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner sc = new Scanner(System.in);
		long l = sc.nextLong();
		sc.close();
		long countOne=0;//奇数
		long countTwo=0;//偶数
		for (long i = 1; i <=l; i++) {
			if(i%2==0) {
				countTwo++;
			}else {
				countOne++;
			}
		}
		//只能处理10亿左右
		System.out.println(countOne+" "+countTwo);
	}

}

找规律编码:(处理long值内所有值)

package com.item.action;

import java.util.Scanner;

/**
 * 
 * @author hongmuxiangxun&nbsp;红目香薰&nbsp;付文龙&nbsp;老师付&nbsp;laoshifu
 *
 */
public class demo12 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner sc = new Scanner(System.in);
		long l = sc.nextLong();
		sc.close();
		long countTwo=l/2;//偶数
		long countOne=countTwo;//奇数
		if(l%2==1) {
			countOne++;
		}
		System.out.println(countOne+" "+countTwo);
	}

}


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。