真的很尴尬,四年弹指一挥间,如今,计算机、数学、英语的水平就像一个刚刚毕业的高中生。如今仍然要入门一些简单的算法,现在真是后悔莫及。悔不该当初没有认真学习,悔不该没有天天coding。但是,“收余恨,且自新,改性情,休恋逝水”。认真准备复试,过了这关再望那关。
第一章 程序设计入门
输入三个数字,从大到小排序输出
#include <stdio.h> #include <math.h> int main() { int a,b,c,t; scanf("%d%d%d",&a,&b,&c); if(a>b) {t=a;a=b;b=t;} if(a>c) {t=a;a=c;c=t;} if(b>c) {t=b;b=c;c=t;} printf("%d %d %d ",a,b,c); return 0; }
第二章 循环结构程序设计
在MinGW的gcc(7)中,要把%lld改成%I64d,但奇怪
的是VC2008里又得改回%lld。
第三章 数组和字符串
开灯问题:
有n盏灯,编号为1~n。第1个人把所有灯打开,第2个人按下所有编号为2
的倍数的开关(这些灯将被关掉),第3个人按下所有编号为3的倍数的开关(其中关掉的灯
将被打开,开着的灯将被关闭),依此类推。一共有k个人,问最后有哪些灯开着?输
入n和k,输出开着的灯的编号。k≤n≤1000。
样例输入:
7 3
样例输出:
1 5 6 7
#include <stdio.h> #include <string.h> #define maxn 1010 int a[maxn]; int main() { int n,k,first = 1; memset(a,0,sizeof(a)); scanf("%d%d",&n,&k); for(int i = 1;i <= k;i++) for(int j = 1;j <=n; j++) if(j%i == 0) a[j] = !a[j]; for(int i = 1; i<= n ;i++) if(a[i]) { if(first) first = 0 ; else printf(" "); printf("%d",i); } printf(" "); return 0; }
第四章 函数和递归
第五章 STL
第六章 数据结构
第七章 暴力求解
LAST 典型算法