摘要: vector<int> u; //储存a倒序的每个数 vector<int> v; //储存b倒序的每个数 vector<int> add(vector<int> m, vector<int> n) {//高精度加法 vector<int> temp;//temp数组存储相加后的每个数 int t= 阅读全文
posted @ 2024-10-06 13:39 才瓯 阅读(63) 评论(0) 推荐(0)
摘要: STL vector vector是动态数组,支持随机访问,不支持在任意位置O(1)插入为,元素的增删一般在末尾进行 include 头文件声明 vector a; 相当于声明一个长度动态变化的int数组 vector b[233]; 相当于声明一个第一维长233,第二维长度动态变化的int数组 s 阅读全文
posted @ 2024-10-06 11:15 才瓯 阅读(37) 评论(0) 推荐(0)
摘要: void swap(int* a, int* b) { int temp = *a; *a = *b; *b = temp; } //swap交换两数 void quick_sort(int u[], int l, int r) { if (l >= r) return; int x = u[r], 阅读全文
posted @ 2024-10-06 10:32 才瓯 阅读(35) 评论(0) 推荐(0)
摘要: int tmp[];//temp数组存储数据 void merge_sort(int a[],int l,int r) { if (l >= r) return;//递归到最后只有一个数返回 int mid = (l + r)/2 ;//确定分界点 l~mid mid+1~r; merge_sort 阅读全文
posted @ 2024-10-06 10:31 才瓯 阅读(39) 评论(0) 推荐(1)
摘要: 粗看题目 我靠,什么方向还变来变去的(哭泣 核心思想:圈内右数,圈外左数为整体逆时针数;圈外右数,圈内左数为整体顺时针数 运用结构体就有了第一版源码: struct people { int face; char name[12]; }; int main() { int m, n; scanf(" 阅读全文
posted @ 2024-10-06 10:30 才瓯 阅读(19) 评论(0) 推荐(0)
摘要: 对题目第一印象:贪心吧,或者纯模拟 第一次贪心,由于左右端堆只能想内一堆移动,遂放弃 第一次模拟,开多个数组,(可能还要用递归?),遂放弃 于是求助如来佛祖: 从逻辑上可以看出,第一堆缺或者多的牌只能移动到第二堆上 当第一堆达到期望值时,第一堆便不能再做操作,于是,可以将第二堆作为第一堆来处理 (有 阅读全文
posted @ 2024-10-06 10:20 才瓯 阅读(27) 评论(0) 推荐(0)