FOJ 1402(dp推规律)
DP 规律
2023-09-14 09:08:55 时间
推规律吧
/** 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 0 1 2 5 13 29 61 125 253 509 1021 2045 4093 8189 16381 32765 65533 131069 262141 524285 48570 97143 194289 388581 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 3 9 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51 53 55 57 59 61 63 65 67 69 71 73 75 77 79 81 83 85 87 89 91 93 95 97 99 101 103 105 107 109 111 113 115 117 119 121 123 125 127 129 131 133 135 137 139 141 143 145 147 149 151 153 155 157 159 161 163 165 167 169 171 173 175 177 179 181 183 185 187 189 191 193 195 197 199 201 203 5 13 29 61 125 253 509 1021 2045 4093 8189 16381 32765 65533 131069 262141 524285 48570 97143 194289 388581 777165 554330 108660 217323 434649 869301 738602 477204 954411 908822 817644 635288 270576 541155 82310 164623 329249 658501 317002 634007 268014 5 36031 72062 144127 288257 576517 153034 306071 612145 224290 448583 897169 794338 588676 177352 354707 709417 418834 837671 675342 350684 701371 402742 805487 610974 221948 443899 887801 775602 551204 102408 204819 409641 819285 638570 277140 554283 108566 217135 434273 868549 737098 474196 948395 896790 793580 587160 174320 348643 697289 394578 789159 578318 156636 313275 626553 253106 506215 124 30 24863 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 5 13 29 61 125 253 509 1021 2045 4093 8189 16381 32765 65533 131069 262141 524285 1048573(18) 2097149 4194301 8388605 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 7 1 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51 53 55 57 59 61 63 65 67 69 71 73 75 77 79 81 83 85 87 89 91 93 95 97 99 101 103 105 107 109 111 113 115 117 119 121 123 125 127 1 29 131 133 135 137 139 141 143 145 147 149 151 153 155 157 159 161 163 165 167 169 171 173 175 177 179 181 183 185 187 189 191 193 195 197 199 201 203 5 13 29 61 125 253 509 1021 2045 4093 8189 16381 32765 65533 131069 262141 524285 1048573 2097149 4194301 8388605 16777213 33554429 67108861 134217725 268435453 536870909 1073741821 2147483645 -3 -3 - 3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 7 1 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51 53 55 57 59 61 63 65 67 69 71 73 75 77 79 81 83 85 87 89 91 93 95 97 99 101 103 105 107 109 111 113 115 117 119 121 123 125 127 1 29 131 133 135 137 139 141 143 145 147 149 151 153 155 157 159 161 163 165 167 169 171 173 175 177 179 181 183 185 187 189 191 193 195 197 199 201 203 5 13 29 61 125 253 509 1021 2045 4093 8189 16381 32765 65533 131069 262141 524285 48570 97143 194289 388581 777165 554330 108660 217323 434649 869301 738602 477204 954411 908822 817644 635288 270576 5 41155 82310 164623 329249 658501 317002 634007 268014 536031 72062 144127 288257 576517 153034 306071 612145 224290 448583 897169 794338 588676 177352 354707 709417 418834 837671 675342 350684 701371 402742 805487 610974 221948 443899 887801 775602 551204 102408 204819 409641 819285 638570 277140 554283 108566 217135 434273 868549 737098 474196 948395 896790 793580 587160 174320 348643 697289 3945 78 789159 578318 156636 313275 626553 253106 506215 12430 24863 */ /** 5 13 29 61 125 253 509 1021 2045 4093 8189 16381 32765 65533 131069 262141 524285 1048573 2097149 4194301 8388605 16777213 33554429 67108861 134217725 a[3][0] = a[2][1] = 5; a[3][1] = a[2] a[ a[3][0] ] = a[2][ 5 ] = 13; a[3][2] = a[2][ 13 ] = 29; a[3][3] = a[2][ 29 ] = 1,5 2,13 3,29 1, 1*2+3 n*2+3 2, 5*2+3 (n*2+3)*2 + 3 n*2*2 + 3*2 + 3 3, 13*2+3 ( (n*2+3)*2 + 3 )*2 + 3 n*2*2*2 + 3*2*2 + 3*2 + 3 3+6+12+ 4, 29*2+3 ( ( (n*2+3)*2 + 3 )*2 + 3 )*2 + 3 1*2*2*2*2 + 3*2*2*2 + 3*2*2 + 3*2 +3 n, 2(n) + 3*(1-2(n)) / -1 2(n) + 3*(2(n)-1) 4*2(n)-3 a[m-1][ ] 3*(1-2*2(n)) / (1 - 2) = 3*(-15 )/-1 = 45 + 16 = 61 61 */ /** 5 13 29 61 125 253 509 1021 2045 4093 8189 16381 32765 65533 131069 262141 524285 1048573 2097149 4194301 8388605 6777210(22) 3554420(23) 7108843(24) 4217686(25) */ /*** a[3][22] = a[2][ a[3][21] ] = a[2][ 8388605 ] = 13; a[3] */ #include <iostream> #include<cstdio> using namespace std; int Ackermann(int m,int n) { if (m==1) { return 2+n; } else if (m==2) { return 3+2*n; } else if (m==3) { if(n>0) return Ackermann(2,Ackermann(m,n-1)); else if (n==0) { return Ackermann(2,1); } } return 0; } int main() { // for(int i=0;i<=3;i++){ // for(int j=0;j<=100;j++){ // printf("%d ",Ackermann(i,j)); // } // printf("\n"); // } for(int i=0;i<=24;i++) printf("%d ",Ackermann(3,i) ); return 0; } /**134217725*/ /**a[3][24] = a[2][ a[3][23] ] 4217686*/
#include<cstdio> #include<algorithm> #include<cstring> using namespace std; int a[4][100000000 + 10]; int main() { for(int i=0;i<=3;i++){ for(int j=0;j<=100000000;j++){ if(i==0) a[i][j]=j+1; else if(i>0&&j==0) a[i][j]=a[i-1][1]; else if(i>0&&j>0) a[i][j]=a[i-1][a[i][j-1]]; } } for(int j=0;j<=1000000;j++) a[0][j]=j+1; a[1][0]=2;a[1][1] = a[0][ a[1][0] ] = 3; a[1][2] = a[0][ a[1][1] ]=4; a[1][3] = a[0][ a[1][2] ] = 5; for(int j=1;j<=1000000;j++) a[1][j] = a[0][ a[1][j-1] ]; a[2][0]=a[1][1] = 3; a[2][1] = a[1][ a[2][0] ] = 5; for(int j=1;j<=1000000; j++) a[2][j]=a[1][ a[2][j-1] ]; // for(int i=0;i<=3;i++){ // for(int j=0;j<=100;j++){ // printf("%lld ",a[i][j]); // } // printf("\n"); // // } printf("%lld",a[1][1000001]); a[2][500000] = a[1][ a[2][500000 - 1] ] = a[1][1000001]; a[1][1000001] = a[0][ a[1][1000000] ] n=2; m=1000000; a[2][1000000] = a[1][ a[2][] ] // int m,n; // while(scanf("%d%d",&m,&n)!=EOF){ // printf("%lld\n",a[m][n]); // } return 0; }
#include<cstdio> #include<algorithm> #include<cstring> using namespace std; int a[4][100000000 + 10]; int main() { for(int i=0;i<=3;i++){ for(int j=0;j<=100000000;j++){ if(i==0) a[i][j]=j+1; else if(i>0&&j==0) a[i][j]=a[i-1][1]; else if(i>0&&j>0) a[i][j]=a[i-1][a[i][j-1]]; } } // for(int i=0;i<=24;i++) // printf("%d ",a[3][i] ); int m,n; while(scanf("%d%d",&m,&n)!=EOF){ printf("%d\n",a[m][n]); } // for(int i=0;i<=10;i++){ // for(int j=0;j<=10;j++){ // printf("%d ",a[i][j]); // } // printf("\n"); // } return 0; }
ac:
#include<cstdio> #include<algorithm> #include<cstring> #include<cmath> using namespace std; int pp[25]={}; int a(int m,int n){ if(m==0 ) return n+1; else if(m==1) return n+2; else if(m==2) return 2*n+3; else if(m==3) return a(2, 4*floor( pow(2,n)+0.5 )-3 ) ; } int main() { int m,n; while(scanf("%d%d",&m,&n)!=EOF){ printf("%d\n",a(m,n)); } return 0; }
相关文章
- poj 3254 Corn Fields 状压DP
- Java实现 LeetCode 801 使序列递增的最小交换次数 (DP)
- Java实现 LeetCode 576 出界的路径数(DFS || DP)
- Android px、dp、sp之间相互转换
- 数位DP - 带49的数
- POJ 2479-Maximum sum(线性dp)
- Codeforces 437E The Child and Polygon(间隔DP)
- HDU 1248 冰封王座(dp)
- POJ 3691 & HDU 2457 DNA repair (AC自己主动机,DP)
- POJ 2151 Check the difficulty of problems (动态规划-可能DP)
- HDU4960Another OCD Patient(间隙dp,后座DP)
- hdu 5074 相邻的和最大dp
- poj2533--Longest Ordered Subsequence(dp:最长上升子序列)
- PAT 1033 To Fill or Not to Fill[dp]
- dp模板
- 刷题记录:CF859C - Pie Rules [博弈论dp]
- 赛后补题:2022 CCPC Guangzhou I. Infection 树形背包dp+概率贡献
- 动态规划——最长公共子序列(闫氏DP)