2037.今年暑假不AC思路涉及贪心算法可以看看这个视频贪心算法例题#include stdio.h void swap(int *a,int *b){ int t*a; *a*b; *bt; } int main(){ int n,i,j,count; int a[100][2]; while(scanf(%d,n)!EOF){ if(n0) break; for(i0;in;i){ scanf(%d %d,a[i][0],a[i][1]); } //对节目排序 for(in-1;i0;i--){ int flag0; for(j0;ji;j){ if(a[j][1]a[j1][1]){ swap(a[j][1],a[j1][1]); swap(a[j][0],a[j1][0]); flag1; } } if(flag0) break; } //先观看结束时间小的节目 j0; count1; for(i1;in;i){ if(a[j][1]a[i][0]){ ji; count; } } printf(%d\n,count); } return 0; }2039.三角形思路先给三条边排序只要最大边小于其他两边之和那么任意两边之和肯定大于第三边。刚开始一直无法ac后来发现题目边的数据类型只要求是正数就好于是把int型改成double型了#include stdio.h #includestdlib.h int cmp(const void *a, const void *b) { // 将 void* 指针转换为 double* 指针并解引用 double da *(const double *)a; double db *(const double *)b; // 使用 if-else 避免直接相减导致的精度或溢出问题 if (da db) return -1; if (da db) return 1; return 0; } int main(){ int n; double a[3]; scanf(%d,n); while(n--){ scanf(%lf %lf %lf,a[0],a[1],a[2]); //对三角形的三条边升序排序 qsort(a,3,sizeof(double),cmp); //判断最大边是否小于其他两边之和最小边是否大于其他两边之差 if(a[2](a[0]a[1])){ printf(YES); } else{ printf(NO); } if(n0) printf(\n); } return 0; }2040.亲和数#include stdio.h #includestdlib.h int cmp(const void *a, const void *b) { // 将 void* 指针转换为 double* 指针并解引用 double da *(const double *)a; double db *(const double *)b; // 使用 if-else 避免直接相减导致的精度或溢出问题 if (da db) return -1; if (da db) return 1; return 0; } int main(){ int m,a,b; scanf(%d,m); while(m--){ scanf(%d %d,a,b); int i,j,sum10,sum20; for(i1;ia;i){ if(a%i0) sum1i; } for(j1;jb;j){ if(b%j0) sum2j; } if(sum1bsum2a) printf(YES); else printf(NO); if(m0) printf(\n); } return 0; }2041.超级楼梯思路本质是斐波那契数列两种方法递归和迭代递归效率不高会超时选迭代#include stdio.h #includestdlib.h int main() { int n,m; scanf(%d,n); while(n--) { scanf(%d,m); int dp[401]; dp[1]1; dp[2]1; for(int i3; im1; i) { dp[i]dp[i-1]dp[i-2]; } printf(%d,dp[m]); if(n0) printf(\n); } return 0; }2042.不容易系列之二#include stdio.h #includestdlib.h #include stdbool.h int main() { int n,m; scanf(%d,n); while(n--) { scanf(%d,m); int x,y3; for(int im; i0; i--) { x2*y-2; yx; } printf(%d,x); if(n0) printf(\n); } return 0; }