6461 分钟

笑了,返回字符串数组末尾加上’\0’会报 AddressSanitizer: heap-buffer-overflow on address 开两个数组,一个记录字符,一个记录个数,mark标记上一字符,若不同则更新mark #define f(i, a, b) for (int i = a; i <= b; i++) int compress(char* chars, int charsSize){ int a[2000]={0},b[2000]={0},ac=0; char m
1.5k1 分钟

先check是不是完全满足,不是再二分订单查找不满足的订单

一开始写得像个弱智一样,check函数最后累加时for循坏竟写成

...
#define f(i, a, b) for (int i = a; i <= b; i++)
...
int check(int md){
f(i, 1, md)
...
}

而实际上边界值应该是n

1951 分钟

今天在群里看到了这个题然后群里的康老师给了解答 忽然想起了那段时光,可惜最后还是成了一个遗憾,中高考数学竟然一样的分111,唉~ 《导数的秘密》看了千百遍,放缩取点练了无数次,没想到最后败在极值点。相交弦定理没看出来,双曲线看错题,抛物线也看错写成抛物线方程,倒是最后的语文还算行,不知后事如何了!
4711 分钟

第一个for循坏有点多余,应只判断是否全为’a’,全为则最后一位改为’b’ #define f(i, a, b) for (int i = a; i <= b; i++) char * breakPalindrome(char * palindrome){ if(strlen(palindrome)==1) return ""; f(i,'a','z'){ f(j,0,strlen(palindrome)/2-1){ if(pali