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

OJ刷题小结

1.1题目

1.2代码

#include <stdio.h> #include <string.h> int add(int a, int b) { return a + b; } int main() { int n; scanf("%d", &n); getchar(); char input[20]; for (int i = 0; i < n; i++) { fgets(input, sizeof(input), stdin); int a, b; sscanf(input, "add(%d,%d)", &a, &b); printf("%d\n", add(a, b)); } return 0; }

1.3思路

1. 加法函数 add :接收两个整型参数,返回它们的和,符合题目对 add(a,b)=a+b 的定义。
​2. 输入处理:
​先读取组数 n ,再用 getchar() 吸收换行符,防止 fgets 读取到空行。
​用 fgets 逐行读取 add(a,b) 格式的字符串,避免 scanf 处理带括号/逗号的字符串时出现问题。
​3. 字符串解析:通过 sscanf 按 "add(%d,%d)" 的格式提取 a 和 b 的数值。
​4. 输出结果:调用 add 函数计算后,逐行输出结果。

2.1题目

2.2代码

#include <stdio.h> #define MAX_N 100 void bubble_sort(int arr[], int len) { for (int i = 0; i < len - 1; i++) { for (int j = 0; j < len - 1 - i; j++) { if (arr[j] > arr[j + 1]) { int temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } } int main() { int N; int nums[MAX_N]; int unique_nums[MAX_N]; int unique_count = 0; scanf("%d", &N); for (int i = 0; i < N; i++) { scanf("%d", &nums[i]); } for (int i = 0; i < N; i++) { int is_duplicate = 0; for (int j = 0; j < unique_count; j++) { if (nums[i] == unique_nums[j]) { is_duplicate = 1; break; } } if (!is_duplicate) { unique_nums[unique_count++] = nums[i]; } } bubble_sort(unique_nums, unique_count); printf("%d\n", unique_count); for (int i = 0; i < unique_count; i++) { printf("%d", unique_nums[i]); if (i != unique_count - 1) { printf(" "); } } printf("\n"); return 0; }

2.3思路

1. 数据存储:用 nums 数组存储原始输入, unique_nums 数组存储去重后的结果, unique_count 记录去重后的元素个数。
​2. 去重逻辑:遍历原始数组,逐个检查元素是否已存在于去重数组中,不存在则加入,实现去重。
​3. 排序实现:使用冒泡排序对去重后的数组升序排列,逻辑简单且适配题目数据量(N≤100)。
​4. 输出格式:先输出去重后的数量,再输出排序后的数字,数字间用空格分隔,最后一个数字后无多余空格。

http://www.cnnetsun.cn/news/10123.html

相关文章:

  • MySQL表的约束
  • IP地址分类管理
  • Windows右键菜单大扫除:从杂乱无章到高效简洁的完整改造方案
  • 如何为个人网站选择一个高性价比域名?
  • Adobe官方卸载工具下载安装保姆级教程(附下载地址,非常详细)
  • shell笔记
  • 多头和q,kv的区别
  • 为什么加上位置编码后 patch 会有空间信息 需要解释一下
  • 基于Springboot船舶监造管理系统【附源码+文档】
  • 从原型到产品:融合算子的单元测试、集成测试与持续集成
  • Servlet原理Mapping问题ServletContext对象
  • 军事图像分类检测数据集介绍-351张图片 军事身份识别 安全检查辅助 智能监控系统 军事训练分析 历史军事影像分析
  • 人机环境系统智能是新理科与新文科的融点
  • 【字节开源Golang框架Eino】技术详解:架构原理+实战落地+避坑指南(附代码)
  • UE5 材质-22:
  • WebRTC 中的临界锁实现:从 CritScope 到 RAII 机制的深度解析
  • Mistral AI发布Magistral 1.2:24B参数轻量级模型重构多模态推理范式
  • Linux内核伙伴系统(Buddy System)原理详解
  • Universal x86 Tuning Utility终极指南:轻松解锁硬件性能的秘密武器
  • 基于三电平逆变器的有源滤波APF设计及Matlab/Simulink仿真
  • NVIDIA显卡深度调优指南:解锁隐藏性能的完全攻略
  • B站视频转文字完整指南:一键提取语音内容神器
  • 5步搞定Blender 3MF插件:从安装到高效3D打印工作流
  • Vue-Office Excel预览异常排查:从空白页面到完美渲染的完整指南
  • SQL SELECT:向数据库“点菜”的神奇指令
  • 深度学习之常用激活函数
  • 2023年IEEE TIV,GA-LNS算法+直升机救援调度,深度解析+性能实测
  • xshell的一个会话的连接的ip地址在哪里修改?
  • 【活动总结】创药沙龙第一期:ADC药物研发的挑战与机遇成功举办
  • 如何用免费工具3分钟终极优化Windows右键菜单:告别杂乱,提升300%操作效率