-
个人简介
https://dp.puzzlehunt.net/puzzles.html
https://ccbc9.cipherpuzzles.com/info/tools
https://piellardj.github.io/stereogram-solver/
快读
inline int read() { int x=0,f=1;char ch=getchar(); while (ch<'0'||ch>'9'){if (ch=='-') f=-1;ch=getchar();} while (ch>='0'&&ch<='9'){x=x*10+ch-48;ch=getchar();} return x*f; }
快写
inline void write(int x) { if(x<0)putchar('-'),x=-x; if(x>9)write(x/10); putchar(x%10+'0'); }
插入排序
#include<iostream> #include<cmath> using namespace std; int n,a[100005]; int main() { cin>>n; for(int i=1;i<=n;i++)cin>>a[i]; for(int i=1;i<=n;i++) { int j=i-1; while(j>=1&&a[j]>a[j+1]) { swap(a[j],a[j+1]); j--; } } for(int i=1;i<=n;i++)cout<<a[i]<<" "; return 0; }
堆排序
#include<iostream> #include<cmath> using namespace std; int t,p[1000005],len; void push_up(int id) { if(id/2==0)return; if(p[id/2]>p[id]) { swap(p[id/2],p[id]); push_up(id/2); } } void push_down(int id) { int k=id; if(id*2<=len&&p[id*2]<p[k]) k=id*2; if(id*2+1<=len&&p[id*2+1]<p[k]) k=id*2+1; if(id!=k) { swap(p[id],p[k]); push_down(k); } } int main() { cin>>t; while(t--) { int opt,x; cin>>opt; if(opt==1) { cin>>x; p[++len]=x; push_up(len); } else if(opt==2) { cout<<p[1]<<endl; } else { p[1]=p[len--]; push_down(1); } } return 0; }
归并排序
#include<iostream> using namespace std; int n,a[100005],b[100005]; void merger_sort(int l,int r) { if(l>=r)return; int mid=l+r>>1; merger_sort(l,mid); merger_sort(mid+1,r); int x=l,L=l,y=mid+1; while(x<=mid&&y<=r) { if(a[x]<=a[y]) b[l++]=a[x++]; else b[l++]=a[y++]; } while(x<=mid) b[l++]=a[x++]; while(y<=r) b[l++]=a[y++]; for(int i=L;i<=r;i++) a[i]=b[i]; } int main() { cin>>n; for(int i=1;i<=n;i++)cin>>a[i]; merger_sort(1,n); for(int i=1;i<=n;i++)cout<<a[i]<<" "; return 0; }
快速排序
#include<iostream> using namespace std; int n,a[100005]; int check(int l,int r) { int k=l; while(l<=r) { while(l<=r&&a[l]<=a[k]) l++; while(l<=r&&a[r]>=a[k]) r--; if(l<=r) swap(a[l],a[r]); } swap(a[k],a[r]); return r; } void quickly_sort(int l,int r) { if(l>=r)return; int mid=check(l,r); quickly_sort(l,mid-1); quickly_sort(mid+1,r); } int main() { cin>>n; for(int i=1;i<=n;i++)cin>>a[i]; quickly_sort(1,n); for(int i=1;i<=n;i++)cout<<a[i]<<" "; return 0; }
-
通过的题目
- 1
- 2
- 3
- 5
- 6
- 7
- 11
- 12
- 14
- 27
- 29
- 32
- 36
- 42
- 65
- 76
- 77
- 88
- 95
- 96
- 99
- 100
- 106
- 357
- 360
- 375
- 414
- 420
- 422
- 468
- 469
- 473
- 475
- 476
- 481
- 483
- 486
- 487
- 488
- 494
- 518
- 561
- 568
- 641
- 649
- 652
- 653
- 656
- 657
- 676
- 677
- 687
- 708
- 714
- 715
- 722
- 749
- 755
- 765
- 767
- 775
- 784
- 809
- 810
- 811
- 812
- 813
- 814
- 815
- 816
- 817
- 818
- 819
- 820
- 821
- 822
- 823
- 824
- 825
- 826
- 827
- 828
- 829
- 830
- 831
- 832
- 833
- 834
- 835
- 836
- 837
- 838
- 839
- 840
- 841
- 842
- 843
- 844
- 845
- 846
- 848
- 849
- 850
- 851
- 852
- 853
- 855
- 856
- 859
- 862
- 863
- 864
- 865
- 866
- 868
- 870
- 871
- 873
- 874
- 876
- 877
- 878
- 879
- 880
- 881
- 882
- 884
- 885
- 886
- 887
- 888
- 889
- 890
- 891
- 894
- 896
- 898
- 899
- 903
- 904
- 905
- 906
- 907
- 908
- 909
- 910
- 912
- 914
- 915
- 917
- 918
- 919
- 921
- 922
- 924
- 925
- 926
- 928
- 929
- 931
- 932
- 933
- 935
- 937
- 941
- 942
- 944
- 946
- 947
- 951
- 952
- 953
- 954
- 955
- 956
- 957
- 958
- 959
- 960
- 963
- 964
- 966
- 967
- 970
- 971
- 972
- 973
- 975
- 977
- 978
- 980
- 981
- 982
- 983
- 984
- 985
- 986
- 987
- 988
- 989
- 990
- 991
- 993
- 994
- 995
- 996
- 1000
- 1002
- 1003
- 1006
- 1007
- 1015
- 1016
- 1017
- 1018
- 1020
- 1023
- 1025
- 1026
- 1030
- 1034
- 1035
- 1042
- 1043
- 1044
- 1049
- 1052
- 1084
- 1085
- 1089
- 1090
- 1091
- 1092
- 1093
- 1095
- 1098
- 1107
- 1110
- 1112
- 1114
- 1115
- 1117
- 1120
- 1122
- 1128
- 1132
- 1134
- 1140
- 1153
- 1154
- 1162
- 1163
- 1178
- 1184
- 1185
- 1187
- 1188
- 1189
- 1190
- 1191
- 1194
- 1202
- 1218
- 1220
- 1226
- 1232
- 1233
- 1238
- 1241
- 1242
- 1277
- 1278
- 1280
- 1282
- 1283
- 1284
- 1285
- 1286
- 1295
- 1296
- 1300
- 1303
- 1304
- 1316
- 1317
- 1319
- 1320
- 1321
- 1322
- 1341
- 1342
- 1343
- 1345
- 1401
- 1426
- 1484
- 1485
- 1500
- 1501
- 1505
- 1553
- 1564
- 1637
- 1662
- 1675
- 1676
- 1677
- 1678
- 1722
- 1763
- 1818
- 1828
- 1954
- 2298
- 2299
- 2303
- 2304
- 2310
- 2330
- 2341
- 2342
- 2474
- 2495
- 2496
- 2512
- 2513
- 2514
- 2528
- 2550
- 2551
- 2552
- 2554
- 2555
- 2556
- 2618
- 2619
- 2620
- 2621
- 2622
- 2623
- 2625
- 2626
- 2629
- 2630
- 2631
- 2632
- 2634
- 2637
- 2638
- 2640
- 2720
- 2722
- 2723
- 2750
- 2751
- 2800
- 2816
- 2866
- 2916
- 2948
- 2950
- 2951
- 2953
- 2954
- 2955
- 2956
- 2983
-
最近活动
- 2024年CSP-J模拟测试2(出题人:刘昕苡) OI
- 少年宫模拟测重现2 OI
- 2022年CSP-J第二轮重现 IOI
- CSPJ模拟测试8 IOI
- CSPJ模拟测试7 IOI
- CSPJ模拟测试6 IOI
- CSPJ模拟测试5 IOI
- CSPJ模拟测试4 IOI
- CSPJ模拟测试2 OI
- 思维锻炼1 IOI
- 第二届小云雀杯决赛(初级组) OI
- 第二届小云雀杯初级组 IOI
- 周日下午东山中级班——高精度练习 IOI
- 少年宫周日中级1、2班(2023/3/5) 作业
- 【杨远时】少年宫周日下午4:10中级班作业 作业
- 测试 OI
- 搜索 IOI
- 1月2日练习 IOI
- 周六下午班 IOI
- 2022CSP—J2模拟赛1 OI
- 普及组测试6 IOI
- 普及组测试5 IOI
- 普及组测试4 IOI
- 普及组测试3 OI
- 添胜初级班二分查找/二分答案 IOI
- 添胜初级班递归 IOI
- 添胜初级班差分 IOI
- 添胜初级班前缀和 IOI
- 添胜初级班高精度 IOI
- 粤港澳编程能力提升活动入门组测试重现(民间数据) IOI
- 添胜初级班位运算 IOI
- 添胜初级班进制转换 IOI
- 添胜字符串综合练习 IOI
-
最近编写的题解
题目标签
- 语言基础
- 100
- 循环语句
- 69
- 语言入门
- 37
- 字符串
- 31
- 竞赛
- 29
- 选择语句
- 29
- 其他
- 26
- 字符数组
- 26
- 一维数组
- 23
- 搜索
- 22
- NOIP
- 21
- 一本通
- 18
- 动态规划
- 17
- 年份
- 16
- 高精度
- 15
- 递归
- 14
- 普及组
- 13
- 图结构
- 12
- 最短路
- 11
- 位运算
- 10