- 8:00-9:40 大学英语
- 10:10-11:50 大学物理(又是催眠课呜呜)
- 12:30-13:00 看了会啊哈算法(看的不是很懂 等于白看了)
- 14:00-15:00 参加有关艾滋病知识的会议
- 16:20-18:00 程序设计基础(大爱张彬连老师!),刷题
- 19:00-20:30 看链式结构和结构体
- 20:30-22:00 听19级学长讲课
- 刷题数:2道
- 今天是刷了循环里面的最后两道题
- 第一道是:E题:求鞍点
- 描述
如果矩阵A中存在这样的一个元素A[i,j]满足条件:A[i,j]是第i行中值最小的元素,且又是第j列中值最小的元素,则称之为该矩阵的一个马鞍点。请编程计算出m*n的矩阵A的所有马鞍点。
格式 输入格式输入m,n
然后输入数组中的每个元素,输入的元素为正整数,小于1000
输出格式输出m*n的矩阵A的所有马鞍点,输出的马鞍点按从小到大排序输出
-
这道题目我的思路就是把每行的那个最小的数的角标用一个数组记下,每列最小的数的角标用另一个数组记下,再看他们那个位置是不是一样的,如果一样,就记下那个鞍点,都记完后再排序,最后输出。上代码:
#includeint a[100][1000],b[1001],c[1001],d[1000]; int main() { int m,n; scanf("%d%d",&m,&n); for(int i = 0;i a[i][j]) { min = a[i][j]; y = j; } } b[x++] = y; } int p = 0,q; for(int j = 0;j a[i][j]) { min = a[i][j]; q = i; } } c[p++] = q; } int e = 0; for(int i = 0;i d[j+1]) { int temp = d[j]; d[j] = d[j+1]; d[j+1] = temp; } } } for(int i = 0;i 第二道题是:M题:The Snail 这道题就是数学题
#includeint main() { double h,u,d,f; while(scanf("%lf%lf%lf%lf",&h,&u,&d,&f)!=EOF) { double a; int number=0; int q=0; double sum=0; a=u*f*0.01; if(h==0&&u==0&&d==0&&f==0) break; do { number++; if(u>=0) sum+=u; if(sum>h) { q=1; break; } sum=sum-d; if(sum<0) { q=0; break; } u=u-a; }while(1); if(q==1) printf("success on day %dn",number); else if(q==0) printf("failure on day %dn",number); } return 0; }
- 还有昨天还写了菜鸟杯其他题目 就在今天也一起写了吧
- 菜鸟杯B题:ab==ba?上题目:
- 描述
在一个全部由 'a' 和 'b' 组成的字符串,lzl 喜欢 连续的字符串'ab',ysj 喜欢连续的字符 'ba',
格式 输入格式
他们的师傅是一个非常公正的人,所以对于一个字符串 s, 师傅会通过一些操作使得字符串里面的 'ab' 和 'ba' 出现次数相同,
现在有一个字符串 s, 他们的师傅可以执行如下操作:
1. 将字符串 s 里面的一个字符 'a' 改成 'b';
2. 将字符串 s 里面的一个字符 'b' 改成 'a';
进行最少次操作, 使得字符串 s 满足 'ab' = 'ba'。
提示: 字符串s "abbb", 'ab' 出现1次, 'ba' 出现 0 次, 你只需要一步将 最后一个 'b' 改成 'a' 即可。
输入一个 N, (1 <= N <= 10000) 表示有 N 个 字符串 s;
输出格式
接下来每行 一个字符串 s.第一行输出最少操作次数(可以为 0), 第二行输出 修改后满足要求的字符串s.
样例 样例输入 Copy
提示:只要输出的字符串符合条件就行。不需要一定和样例一样样例输出 Copy4 b aabbbabaa abbb abbaab0 b 0 aabbbabaa 1 bbbb 1 abbaaa这题你会发现怎么排它都是要么个数相等要么就是差一个,所以我们就要去判断到底是谁少了,然 后换字母使之要么减一个多的要么加一个少的,上代码:
#include#include int main() { char a[1000],n; scanf("%d",&n); getchar(); while(n--) { gets(a); int length = strlen(a); int k1=0,k2=0,k=0; for(int i=0;i k2) { if(a[length-2]=='a'&&a[length-1]=='b') { a[length-1] = 'a'; k++; } else if(a[0]=='a'&&a[1]=='b') { a[0] = 'b'; k++; } } if(k1
- 还写了签到题 看很多人都写了 但是我居然菜鸟杯的时候时间超限没做出来 我真菜,昨天再做一遍突然感觉我是sb。。。。。。。代码就不发了,相信都会吧
- 还有一题L题:梦回高中,再创辉煌!
- 这一题呢,最难想的应该是这个输入吧 我那时候也不知道该如何输入,结束之后也去请教了学长,后面舍友告诉我 这个汉字也算字符,所以如果你要比较的话,得用到strcmp函数去比较,当字符串和我们要输入的字串==0是,就可以输出我们需要的下一句话了。上代码:
#include#include int main() { int n = 1; char str[10000]={}; while(gets(str)&&strcmp(str,"")!=EOF) { if(strcmp(str,"今日之责任,")==0) { printf("不在他人,而全在我少年。n"); } if(strcmp(str,"少年智则国智,")==0) { printf("少年富则国富;n"); } if(strcmp(str,"少年强则国强,")==0) { printf("少年独立则国独立;n"); } if(strcmp(str,"少年自由则国自由,")==0) { printf("少年进步则国进步;n"); } if(strcmp(str,"少年胜于欧洲则国胜于欧洲,")==0) { printf("少年雄于地球则国雄于地球。n"); } if(strcmp(str,"红日初升,")==0) { printf("其道大光。n"); } if(strcmp(str,"河出伏流,")==0) { printf("一泻汪洋。n"); } if(strcmp(str,"潜龙腾渊,")==0) { printf("鳞爪飞扬。n"); } if(strcmp(str,"乳虎啸谷,")==0) { printf("百兽震惶。n"); } if(strcmp(str,"鹰隼试翼,")==0) { printf("风尘吸张。n"); } if(strcmp(str,"奇花初胎,")==0) { printf("矞矞皇皇。n"); } if(strcmp(str,"干将发硎,")==0) { printf("有作其芒。n"); } if(strcmp(str,"天戴其苍,")==0) { printf("地履其黄。n"); } if(strcmp(str,"纵有千古,")==0) { printf("横有八荒。n"); } if(strcmp(str,"前途似海,")==0) { printf("来日方长。n"); } if(strcmp(str,"美哉,")==0) printf("我少年中国,与天不老!n"); if(strcmp(str,"壮哉,")==0) printf("我中国少年,与国无疆!n"); } } 接下来就是讲今天学长讲的内容:主要就是讲时间复杂度,空间复杂度,递归,快速幂这些的内容以及该如何优化,最主要讲的是dp概念,还给我们举了好几个例子,并且把这些例子的代码如何优化的思路以及过程等都讲的很透彻,但是也要多多复习,不然就是白听,真棒。
我有啥总结或者说错的地方,欢迎评论区反驳谢谢。
今天的总结就到这里了 晚安家人们。



