当前位置: 首页 > news >正文

第九届蓝桥杯大赛个人赛省赛(软件类)真题C 语言 A 组-分数

在这里插入图片描述

solution1

直观上的分数处理

#include <iostream>
using namespace std;
int main()
{printf("1048575/524288");return 0;
}
#include<stdio.h>
#include<math.h>
typedef long long ll;
struct fraction{ll up, down;
};
ll gcd(ll a, ll b){if(!b) return a;return gcd(b, a % b);
}
fraction r(fraction f){if(gcd(f.down, f.up) > 1){f.down /= gcd(f.down, f.up);f.up /= gcd(f.down, f.up);}return f;
}
fraction add(fraction f1, fraction f2){fraction f;f.down = f1.down * f2.down;f.up = f1.up * f2.down + f2.up * f1.down;return r(f);
}
int main(){fraction f, t;f.up = f.down = 1;for(ll i = 2; i <= pow(2, 19); i *= 2){t.up = 1;t.down = i;printf("%lld %lld\n", t.down, f.up);f = add(f, t);}printf("%lld %lld, %lld %lld", f.up / f.down, f.up % f.down, f.up, f.down);return 0;
}

solution2

手动通分计算为
(219+218+217……+20)/219= (220-1)/219

  • 20+21+22+……+2n-1 = 2n-1
    在这里插入图片描述
  • 较大的数若比 较小的数 的两倍大于或者小1,则两者互质
#include<stdio.h>
#include<math.h>
typedef long long ll;
int main(){printf("%lld/%lld", (ll) pow(2, 20) - 1, (ll) pow(2, 19));//注意别漏了强转double -> llreturn 0;
}

相关文章:

  • 2404C++,C++ADL扩展库
  • centos7 安装 mysql
  • 宝塔面板 -- 打包前端项目并部署提升访问速度
  • 【C++】vector系列力扣刷题日志(136.只出现一次的数字,118.杨辉三角,26.删除有序数组中的重复项,260.只出现一次的数字 |||)
  • 计算机网络链路层
  • 使用API有效率地管理Dynadot域名,清除域名设置
  • 多模态学习实战手册:掌握20余个常见任务及测试数据集!
  • 加域报错:无法完成此功能
  • 如何在VSCode中高效使用Git:完全指南
  • css之flex布局文本不换行不显示省略号的解决方法
  • RocketMQ笔记(五)SpringBoot整合RocketMQ批量发送消息
  • 工控领域的开发原则有哪些
  • bizcharts中LineChart时间戳使用moment转化出现Invalid Date
  • 自定义 Unity Scene 的界面工具
  • 【管理咨询宝藏46】AA银行薪酬激励体系提升分析报告
  • 345-反转字符串中的元音字母
  • docker-consul
  • HTTP中的ETag在移动客户端的应用
  • JAVA SE 6 GC调优笔记
  • Java 内存分配及垃圾回收机制初探
  • Java,console输出实时的转向GUI textbox
  • Spring-boot 启动时碰到的错误
  • 开发基于以太坊智能合约的DApp
  • 聊聊hikari连接池的leakDetectionThreshold
  • 模型微调
  • 想写好前端,先练好内功
  • 优化 Vue 项目编译文件大小
  • 在Unity中实现一个简单的消息管理器
  • 交换综合实验一
  • (多级缓存)缓存同步
  • (附源码)spring boot校园健康监测管理系统 毕业设计 151047
  • (附源码)ssm高校社团管理系统 毕业设计 234162
  • (介绍与使用)物联网NodeMCUESP8266(ESP-12F)连接新版onenet mqtt协议实现上传数据(温湿度)和下发指令(控制LED灯)
  • (没学懂,待填坑)【动态规划】数位动态规划
  • (一)kafka实战——kafka源码编译启动
  • (转)ObjectiveC 深浅拷贝学习
  • (转)全文检索技术学习(三)——Lucene支持中文分词
  • (总结)Linux下的暴力密码在线破解工具Hydra详解
  • .class文件转换.java_从一个class文件深入理解Java字节码结构
  • .Net Attribute详解(上)-Attribute本质以及一个简单示例
  • .Net IOC框架入门之一 Unity
  • .net对接阿里云CSB服务
  • .net快速开发框架源码分享
  • .NET中使用Protobuffer 实现序列化和反序列化
  • .vue文件怎么使用_vue调试工具vue-devtools的安装
  • @Async注解的坑,小心
  • @column注解_MyBatis注解开发 -MyBatis(15)
  • [2010-8-30]
  • [Android]使用Git将项目提交到GitHub
  • [C++] sqlite3_get_table 的使用
  • [C++打怪升级]--学习总目录
  • [CF482B]Interesting Array
  • [CQOI 2010]扑克牌
  • [FUNC]判断窗口在哪一个屏幕上
  • [FxCop.设计规则]8. 也许参数类型应该是基类型