#include<stdio.h> #include<stdlib.h> #include<string.h> typedef struct node{ int data; struct node*left; struct node*right; }node; node* pre_in_build(int *preorder,int *inorder,int presize,int insize); node* post_in_build(int *postorder,int *inorder,int postsize,int insize); node* create(int data); void print_postorder(node*root); void print_preorder(node*root); int main(){ int n; char action[20]; int *preorder=NULL; int *inorder=NULL; int *postorder=NULL; int size; scanf("%d",&n); for(int ii=0;ii<n;ii++){ scanf("%s",action); if(strcmp(action,"preorder-inorder")==0){ scanf("%d",&size); preorder=(int*)malloc(sizeof(int)*size); inorder=(int*)malloc(sizeof(int)*size); for(int i=0;i<size;i++){ scanf("%d",&preorder[i]); } for(int i=0;i<size;i++){ scanf("%d",&inorder[i]); } node *root=pre_in_build(preorder,inorder,size,size); print_postorder(root); }else if(strcmp(action,"postorder-inorder")==0){ scanf("%d",&size); postorder=(int*)malloc(sizeof(int)*size); inorder=(int*)malloc(sizeof(int)*size); for(int i=0;i<size;i++){ scanf("%d",&postorder[i]); } for(int i=0;i<size;i++){ scanf("%d",&inorder[i]); } node *root=post_in_build(postorder,inorder,size,size); print_preorder(root); } printf("\n"); } return 0; } node*create(int data){ node*temp=(node*)malloc(sizeof(node)); temp->data=data; temp->left=NULL; temp->right=NULL; return temp; } node* pre_in_build(int *preorder,int *inorder,int presize,int insize){ int i; if(presize<=0||insize<=0){ return NULL; } node*root=create(preorder[0]); //printf("%d presize=%d insize=%d\n",preorder[0],presize,insize); for(i=0;i<insize;++i){ if(preorder[0]==inorder[i]){ break; } } root->left=pre_in_build(preorder+1,inorder,i,i); root->right=pre_in_build(preorder+1+i,inorder+1+i,presize+i+1,insize-i-1); return root; } node* post_in_build(int *postorder,int *inorder,int postsize,int insize){ int i; if(insize==0 || postsize==0){ return NULL; } node*root=create(postorder[postsize-1]); //printf("%d presize=%d insize=%d\n",preorder[0],presize,insize); for(i=0;i<insize;++i){ if(root->data==inorder[i]){ break; } } root->left=post_in_build(postorder,inorder,i,i); root->right=post_in_build(postorder+i,inorder+i+1,postsize-i-1,insize-i-1); return root; } void print_postorder(node*root){ if(root!=NULL){ print_postorder(root->left); print_postorder(root->right); printf("%d ",root->data); } } void print_preorder(node*root){ if(root!=NULL){ printf("%d ",root->data); print_preorder(root->left); print_preorder(root->right); } } /* 5 preorder-inorder 1000 423 2 998 308 5 6 466 525 815 692 876 12 875 82 311 619 156 18 188 20 839 506 290 24 196 696 865 727 885 93 938 166 33 242 130 436 171 452 908 40 366 328 294 44 961 757 64 48 206 300 707 52 469 25 35 56 675 419 650 158 571 372 404 377 587 129 896 620 574 266 670 72 625 74 636 777 687 118 385 1 281 161 852 84 641 505 87 398 553 205 714 828 54 966 95 786 97 98 99 649 879 635 737 451 122 348 558 380 663 455 773 4 1000 973 26 376 75 298 969 120 795 734 338 438 133 126 261 988 919 780 231 13 8 592 135 432 186 31 81 400 141 142 284 144 957 146 840 499 534 195 151 819 464 154 787 252 993 96 408 848 304 746 101 889 264 674 799 785 169 256 943 200 406 174 598 176 809 119 756 10 516 722 314 849 774 545 39 560 288 567 63 690 193 285 708 197 201 807 426 165 999 202 189 412 53 765 207 410 659 859 402 934 357 735 58 914 594 251 421 796 199 329 860 817 79 561 764 892 422 254 213 316 224 794 417 236 905 268 608 253 241 319 22 108 362 246 580 877 198 164 424 212 471 542 556 454 257 866 909 566 244 570 14 639 518 389 902 869 269 94 302 214 854 274 971 985 125 191 544 243 483 683 630 289 704 669 124 814 613 111 322 292 210 88 204 296 297 50 67 61 249 972 303 501 184 582 468 155 611 470 45 789 367 475 526 806 510 991 428 278 834 157 323 861 37 479 148 23 798 851 295 941 333 334 835 732 259 767 361 838 760 187 595 555 15 976 987 986 107 782 403 352 586 28 355 517 890 624 970 238 100 293 363 891 691 940 121 826 313 71 448 626 912 344 375 958 576 394 827 441 930 382 569 913 21 500 811 532 584 365 27 494 393 887 983 784 131 480 439 327 657 830 681 585 935 409 407 34 272 43 209 416 648 490 520 596 568 69 507 270 305 221 83 770 581 460 219 315 847 617 431 677 995 486 721 391 559 373 618 513 743 723 228 413 473 457 523 258 76 223 282 906 833 778 7 836 411 458 446 336 335 502 590 616 339 227 928 307 540 453 530 51 495 897 615 633 730 741 600 279 481 320 139 260 575 217 487 719 772 414 922 498 493 368 435 646 379 492 631 521 309 703 440 504 588 823 59 3 128 824 797 478 359 871 388 820 430 932 546 901 543 123 216 844 369 370 855 528 607 149 740 515 911 882 788 536 550 888 539 748 143 842 822 843 680 645 654 676 800 463 160 301 527 948 392 665 959 488 387 163 668 208 563 467 565 724 117 211 235 612 91 572 547 345 247 178 577 895 573 497 192 396 583 177 810 720 65 86 589 754 632 918 275 66 343 68 597 709 781 477 666 291 603 604 954 606 529 78 286 240 317 907 775 614 277 926 445 267 85 299 672 11 354 931 484 152 318 538 425 989 759 758 226 857 70 673 637 232 808 749 982 945 643 792 771 981 977 533 496 347 953 688 994 579 655 656 134 524 378 41 686 755 181 664 557 102 255 537 306 245 671 728 324 629 967 132 222 678 813 442 768 472 863 684 804 910 821 136 601 837 491 175 693 694 658 725 667 341 699 700 337 230 287 374 705 706 682 685 514 710 711 726 978 263 915 170 717 331 349 508 381 465 326 73 30 712 16 271 661 173 695 689 233 47 145 736 831 802 739 330 610 979 766 903 172 162 747 627 113 992 751 752 623 531 968 168 920 853 346 638 761 762 443 310 845 474 894 509 397 864 554 239 549 17 803 36 250 215 867 449 605 350 110 485 541 384 886 194 312 90 716 138 60 153 482 750 234 109 519 190 801 248 769 599 805 946 564 49 434 660 963 651 916 846 262 974 512 745 386 353 791 962 763 984 825 551 29 325 106 179 738 733 265 321 450 697 360 340 742 38 42 562 182 57 647 591 702 105 112 273 415 653 552 980 218 856 634 55 679 698 456 862 858 358 744 351 779 383 929 870 881 150 609 874 159 114 818 878 622 880 644 602 883 183 220 715 167 185 103 790 115 960 893 405 578 459 535 898 283 642 342 420 433 829 997 147 900 904 950 548 522 776 447 841 868 127 917 949 593 9 395 390 923 924 925 793 952 872 92 418 77 753 933 850 46 936 937 964 939 461 832 942 427 944 884 955 947 140 462 701 280 80 812 229 364 956 89 444 203 662 32 401 621 62 965 371 652 783 237 137 729 511 628 180 975 927 437 713 503 899 399 718 104 731 816 951 921 116 429 990 276 873 332 489 640 996 225 19 476 356 525 692 815 876 12 82 875 311 466 619 6 188 18 839 20 290 506 696 865 727 196 93 885 33 166 242 130 938 171 452 436 908 40 24 44 294 757 961 64 328 48 366 206 300 707 469 25 52 35 156 56 419 650 675 404 377 587 372 129 896 571 670 266 72 574 636 777 74 687 625 118 385 620 281 161 852 1 84 641 158 398 87 553 505 205 5 786 97 95 879 649 635 737 99 122 348 451 663 380 455 558 773 4 98 1000 26 973 376 966 75 298 54 120 969 133 438 126 261 988 338 919 780 734 231 8 13 592 795 432 135 186 828 81 31 400 141 714 144 284 499 840 534 146 195 151 819 957 787 154 993 252 96 408 848 464 101 889 746 785 169 799 256 674 943 264 406 174 200 176 598 809 304 10 756 516 119 722 314 142 545 39 560 774 567 690 63 193 288 285 849 708 197 308 202 189 999 412 53 165 207 659 859 402 934 357 410 58 914 735 594 765 421 251 199 796 561 764 892 79 422 817 254 213 860 224 794 316 417 236 329 905 268 426 253 241 319 608 108 22 362 807 424 164 471 212 542 198 556 454 257 877 909 866 244 566 570 580 902 389 869 269 94 518 302 639 274 854 971 214 191 125 544 985 243 14 683 483 289 669 124 704 814 630 613 322 292 111 210 88 204 246 249 61 972 67 303 501 50 468 582 155 611 184 470 297 789 475 806 510 526 991 367 428 45 157 861 323 37 479 834 23 148 798 278 941 295 333 851 835 334 732 296 760 838 187 595 15 555 976 987 361 986 107 782 767 352 403 28 586 355 259 517 624 890 100 293 238 363 970 891 691 201 448 71 626 912 313 344 375 958 576 826 382 569 913 930 811 500 532 21 584 441 365 827 494 27 393 394 131 784 480 983 327 439 830 681 657 585 887 935 409 407 121 34 940 520 490 596 648 568 69 416 305 270 221 507 581 460 770 219 83 315 847 209 677 486 995 721 431 559 373 391 513 743 618 723 228 413 617 473 457 43 258 223 282 906 76 836 7 411 778 458 833 446 336 335 502 523 339 616 227 590 928 307 540 453 272 530 51 495 998 730 279 600 481 741 139 260 320 575 633 217 615 498 922 493 368 414 435 772 646 719 631 492 440 504 703 588 823 309 59 521 3 128 824 379 797 487 871 388 359 820 430 932 901 546 543 478 123 897 370 855 369 149 740 607 515 882 788 911 536 528 550 888 844 539 748 216 822 680 645 843 654 842 800 676 463 143 301 948 527 392 665 959 160 488 2 467 563 724 565 117 211 208 91 572 612 547 345 235 178 577 573 895 497 247 192 668 810 177 65 720 589 86 754 583 918 275 632 68 343 597 66 666 291 477 603 604 781 954 529 286 78 240 317 606 775 907 614 277 709 926 396 267 445 85 299 672 163 931 484 354 318 152 538 425 11 70 673 857 637 226 232 982 643 945 792 749 981 771 977 533 808 496 347 758 688 953 994 759 655 579 134 656 524 989 755 181 686 664 557 41 102 378 537 306 255 245 387 629 967 324 132 222 728 678 813 671 863 472 684 768 601 837 136 491 175 821 658 694 725 693 667 910 341 700 699 337 804 287 230 374 705 442 706 423 915 263 170 978 331 717 349 381 508 326 465 73 726 271 661 16 173 712 695 689 30 233 47 711 802 739 831 330 736 610 979 145 766 710 172 162 747 903 992 751 113 752 627 968 168 531 920 853 623 638 762 761 443 310 346 845 474 894 514 864 239 549 554 17 803 397 215 867 250 449 36 605 509 541 485 384 110 886 350 194 312 685 482 153 234 109 750 248 769 801 805 946 599 564 190 49 519 963 660 651 916 434 846 262 60 974 745 512 386 138 962 791 984 551 29 825 325 763 179 265 321 733 450 697 738 360 742 340 38 106 42 353 182 562 591 647 702 57 112 273 415 105 653 552 980 716 634 679 55 698 856 862 858 456 744 351 358 383 779 870 881 929 150 609 218 818 878 622 114 880 644 159 602 883 183 874 715 220 185 790 115 103 960 893 167 459 283 898 642 535 342 578 433 420 829 997 405 147 900 950 904 548 90 776 447 868 127 841 917 593 949 9 522 390 925 924 793 923 92 872 418 77 952 753 850 933 46 395 936 937 964 682 427 944 942 884 955 832 140 462 701 947 80 280 812 229 461 89 956 662 32 203 401 444 621 364 783 652 237 137 371 729 965 511 628 62 975 180 927 939 713 503 899 437 399 816 731 951 921 104 116 990 429 276 718 489 332 640 873 225 19 996 476 356 postorder-inorder 1000 732 53 869 876 948 908 841 328 579 904 911 568 202 768 519 336 414 952 318 288 767 71 526 865 249 298 654 573 402 863 616 21 242 133 348 144 757 599 715 970 790 213 854 128 433 910 466 686 528 182 90 504 571 801 145 404 739 277 73 620 642 696 868 493 178 361 777 307 457 682 281 1 977 966 960 350 407 900 135 950 585 557 316 342 944 365 641 547 694 699 159 630 95 846 334 698 172 722 430 81 635 110 375 232 447 109 969 875 604 27 667 734 120 973 988 344 261 578 870 205 68 1000 994 216 257 388 467 479 584 366 665 455 644 517 354 411 685 755 160 423 83 427 882 151 34 891 576 338 840 839 678 993 115 793 639 838 638 551 8 902 484 914 378 432 369 136 782 406 796 85 286 39 887 153 36 287 306 420 32 708 130 180 211 792 118 858 668 878 981 111 440 619 146 700 934 373 959 171 957 42 362 12 872 765 379 707 221 753 385 58 494 439 339 569 666 157 817 860 483 633 119 769 309 819 812 314 673 975 48 976 999 511 11 989 207 525 296 676 877 126 731 212 611 72 741 558 832 62 921 384 259 542 236 892 243 764 209 590 170 105 600 567 990 268 862 399 33 247 514 458 626 751 278 518 415 380 980 228 489 938 300 56 78 79 82 651 719 370 61 67 283 711 822 582 395 303 821 508 937 57 941 830 246 470 398 591 47 102 803 438 758 601 770 953 532 148 295 884 849 201 397 285 166 168 834 692 428 760 450 101 595 187 658 5 319 593 107 905 218 555 852 912 586 836 352 894 401 998 603 351 363 797 759 310 913 486 322 40 355 164 503 701 798 405 238 939 527 269 706 656 500 204 695 714 677 575 273 529 52 335 465 451 308 657 856 848 26 553 774 929 818 956 967 717 93 550 617 43 661 231 412 393 572 968 853 327 349 507 275 127 907 965 55 331 807 842 728 634 936 462 827 811 625 343 926 799 652 723 544 103 742 513 476 613 346 274 808 94 396 206 51 421 377 59 688 655 475 690 815 196 181 121 248 577 703 598 629 108 985 509 786 22 596 305 749 615 505 410 290 762 124 77 922 594 747 670 624 199 194 454 106 748 65 996 530 498 459 521 861 850 588 15 134 924 156 687 837 784 394 754 940 456 962 6 417 143 820 746 347 684 538 376 3 381 735 874 855 495 29 883 679 901 889 736 266 2 18 954 536 478 254 263 903 574 253 609 951 829 117 540 463 442 169 831 488 647 374 565 650 867 99 272 302 437 16 859 773 781 897 210 873 264 899 452 250 835 785 895 100 675 917 69 825 359 137 632 229 810 9 114 299 945 643 660 583 833 750 326 301 46 329 729 183 560 933 240 881 606 794 581 659 291 928 472 320 391 70 789 826 672 744 649 727 614 419 992 880 280 426 468 141 226 718 779 637 200 523 304 215 223 279 219 510 562 38 778 496 122 282 814 7 783 935 230 804 96 235 524 537 713 41 828 28 367 531 313 431 340 191 245 640 628 543 776 772 147 132 662 324 896 332 44 163 545 986 368 813 566 920 580 175 979 255 262 445 217 293 730 86 446 139 646 806 724 693 292 25 664 978 991 845 587 24 330 186 743 885 627 435 720 30 460 930 208 271 150 490 184 233 816 471 918 927 129 610 916 485 733 104 400 162 356 214 173 982 689 75 608 515 546 919 851 972 737 482 683 623 752 189 443 618 871 17 800 942 188 745 809 87 195 958 50 549 931 886 645 416 691 605 387 176 311 422 906 554 267 541 10 548 357 234 197 802 761 60 702 138 480 738 149 37 888 823 987 669 276 225 983 323 239 607 177 787 258 382 974 237 270 353 364 74 63 341 265 436 705 805 697 453 294 14 712 360 648 925 321 312 709 154 241 49 788 499 674 389 501 97 140 756 289 19 681 477 725 704 185 946 123 843 915 740 165 424 98 492 716 161 244 564 449 464 879 481 429 516 45 597 333 227 622 663 179 898 847 893 710 325 84 317 345 775 474 125 251 88 113 297 795 791 386 193 602 844 23 502 441 192 66 497 612 857 522 4 512 158 949 780 561 131 390 260 142 533 76 923 31 337 284 220 92 961 964 487 256 403 418 461 995 671 473 556 112 520 203 392 866 636 947 469 997 721 372 552 167 222 13 89 971 864 80 91 152 444 358 963 425 64 413 890 434 824 771 315 766 592 371 726 534 224 174 35 932 54 943 155 408 198 984 559 506 680 448 653 621 383 631 20 570 589 190 563 535 491 539 116 955 909 763 252 409 732 869 53 908 948 876 182 841 768 328 904 579 202 568 911 298 519 952 414 336 249 318 865 526 71 767 288 528 573 654 863 402 242 21 616 686 348 133 970 757 144 715 599 466 790 910 433 128 854 213 135 504 90 277 571 145 801 739 404 900 696 642 620 73 682 178 493 868 457 361 307 777 407 350 977 1 281 960 966 354 950 342 585 316 557 641 365 944 334 547 846 694 95 630 159 699 517 722 172 698 635 81 430 232 375 110 644 455 109 447 604 875 969 973 27 120 734 667 1000 870 578 988 261 344 68 205 388 257 216 994 665 366 584 479 467 2 755 685 411 42 160 34 423 151 882 427 83 576 891 115 993 338 678 839 840 934 8 793 551 638 838 639 484 902 796 378 914 369 432 406 782 136 286 85 700 39 440 887 287 36 153 111 306 32 420 180 130 708 981 878 792 211 668 858 118 146 619 957 171 959 373 379 362 765 872 12 119 221 707 439 494 753 58 385 633 569 339 157 666 483 860 817 266 769 819 309 48 314 812 975 673 892 999 976 989 11 511 525 207 741 126 877 676 296 72 611 212 731 236 832 558 542 259 384 921 62 764 243 3 990 209 170 590 567 600 105 518 862 268 33 399 278 458 514 247 751 626 758 380 415 370 980 78 489 228 56 300 938 82 79 719 651 438 67 61 803 821 283 303 395 711 582 822 102 508 470 937 941 57 246 830 47 591 398 701 770 601 532 953 834 148 168 884 295 201 849 166 285 397 912 692 101 428 450 760 658 187 595 852 555 319 5 218 905 107 593 503 586 352 836 164 998 401 894 355 603 913 363 351 310 759 797 40 322 486 376 965 798 238 405 706 939 269 527 52 656 529 204 500 273 575 695 677 714 465 335 907 451 26 848 308 856 657 956 553 818 929 774 717 967 393 93 661 550 43 617 412 231 127 968 572 327 853 275 507 349 206 331 55 462 842 807 936 634 728 396 343 625 811 827 94 926 808 799 476 544 723 652 513 742 103 274 346 613 538 655 421 51 688 59 377 754 475 181 690 196 815 454 121 194 629 577 248 598 703 410 108 505 22 985 786 509 615 596 749 305 199 290 624 670 77 124 762 747 594 922 459 65 748 106 498 530 996 394 861 521 784 850 134 15 588 837 924 687 156 684 940 6 962 456 347 417 746 820 143 736 381 889 901 679 874 735 883 29 495 855 409 478 536 954 18 903 263 254 540 574 117 253 829 951 609 359 169 442 463 825 873 210 488 831 16 374 647 650 565 272 99 867 437 302 773 859 897 781 899 264 69 250 452 785 835 100 895 917 675 299 229 632 137 114 9 810 96 945 804 660 643 230 46 583 301 326 750 833 280 329 928 183 729 291 933 560 606 881 240 659 581 794 880 320 472 70 391 649 744 672 826 789 614 727 992 419 935 426 141 468 783 226 779 718 215 304 637 523 200 7 279 223 814 510 219 282 778 38 562 122 496 932 235 813 524 828 537 41 713 431 367 28 313 531 543 340 628 640 245 191 368 776 324 662 132 147 772 986 896 545 163 44 332 382 566 580 920 255 979 175 292 262 217 445 730 293 693 446 86 646 139 724 806 720 978 664 25 24 991 587 845 435 743 186 330 627 885 258 460 30 208 930 490 150 271 546 233 184 485 816 129 471 927 918 916 610 400 104 733 173 214 356 162 515 982 608 75 689 809 752 972 851 919 482 737 623 683 745 871 618 443 189 188 17 942 800 554 195 87 906 931 958 549 50 422 886 416 645 311 605 691 176 387 787 177 541 267 607 548 10 480 60 761 802 197 234 357 138 702 239 738 37 149 276 888 669 987 823 323 983 225 425 270 237 974 158 353 386 74 364 791 49 805 705 341 63 436 265 312 697 648 453 14 294 360 712 321 925 241 154 709 795 788 140 499 389 674 97 501 297 185 704 289 756 725 19 477 681 424 946 165 740 123 915 843 113 161 716 492 98 564 244 622 481 449 879 464 597 429 45 516 227 333 88 345 317 663 84 898 179 893 847 325 710 251 125 474 775 844 602 193 512 23 441 502 612 192 497 66 4 522 857 167 112 949 131 561 780 337 390 31 142 260 923 76 533 556 473 284 418 220 961 92 403 256 487 964 671 995 461 552 203 520 372 392 721 866 947 636 997 469 963 222 80 864 13 971 89 358 91 444 152 35 890 413 64 174 434 371 824 315 771 592 766 224 534 726 252 943 54 198 408 155 653 984 506 559 448 680 763 383 621 20 631 116 570 190 589 535 563 539 491 909 955 postorder-inorder 1000 331 732 548 747 344 718 988 636 291 25 873 756 428 324 380 75 923 789 975 746 734 433 602 5 517 322 393 453 309 768 281 970 778 811 490 58 150 834 910 262 80 16 510 557 357 770 804 739 583 90 654 277 213 869 866 418 867 539 901 759 171 139 597 800 502 682 252 704 855 379 319 358 131 370 828 966 995 688 195 564 950 641 353 352 47 289 547 591 12 714 879 681 164 313 409 944 892 956 856 571 706 1000 596 110 986 44 172 698 697 969 57 327 266 425 461 426 620 339 261 870 824 887 487 250 693 584 763 125 375 363 42 674 666 220 809 695 522 665 635 365 640 179 59 694 974 467 882 83 341 69 153 581 338 286 350 29 8 67 477 340 859 504 762 226 965 894 782 474 166 209 774 702 85 424 921 639 784 839 755 810 574 387 462 81 772 663 724 306 287 507 709 295 766 935 260 963 412 13 765 701 497 404 858 479 136 559 928 376 843 385 833 268 598 985 298 897 940 411 48 493 312 294 769 819 56 392 259 554 513 895 111 395 964 369 296 335 999 107 611 998 592 126 989 832 384 293 186 676 307 62 558 525 518 203 990 758 78 600 959 650 346 914 617 729 569 599 846 413 521 680 731 476 1 222 382 22 978 167 452 3 793 943 980 670 429 489 443 148 415 283 540 17 913 278 777 847 419 271 51 91 891 491 830 994 546 442 243 227 455 875 229 792 439 752 154 423 736 478 207 823 803 124 168 2 275 197 308 795 925 72 397 37 884 868 247 318 249 435 396 905 351 163 257 120 924 134 836 40 586 549 651 972 794 593 494 621 251 269 328 534 740 371 406 9 36 129 918 585 52 144 798 861 753 162 626 939 532 555 378 434 95 664 127 537 575 445 652 660 506 115 779 133 677 799 841 170 330 216 553 204 93 912 305 567 562 401 10 605 750 457 43 456 450 582 297 807 191 915 618 936 96 780 374 470 54 645 544 255 926 460 566 982 451 348 653 967 577 743 922 632 733 151 671 524 613 174 595 454 228 696 94 55 932 529 471 218 377 767 329 108 687 116 464 717 790 716 193 949 407 845 610 284 579 427 68 360 684 904 890 686 719 669 500 106 362 933 495 945 624 728 84 545 511 19 175 475 417 436 285 157 655 609 256 119 135 857 565 480 607 563 760 152 568 253 472 675 65 414 6 821 244 314 649 707 299 465 254 992 937 383 242 276 871 219 101 273 829 18 234 391 128 854 538 210 488 138 100 345 437 231 147 634 941 930 225 927 741 968 528 917 159 188 317 205 851 874 410 302 898 644 304 77 236 137 505 46 685 862 104 233 441 326 530 109 817 26 516 730 211 661 881 947 160 503 347 501 183 614 775 99 603 876 498 606 931 499 619 711 232 647 53 263 82 604 70 496 121 527 812 468 156 438 954 38 459 237 900 258 938 194 35 788 860 240 813 883 786 325 288 822 482 713 852 552 957 796 820 223 469 797 523 215 638 359 196 556 961 827 246 877 367 692 440 973 45 122 200 699 960 658 321 315 184 73 720 659 678 911 588 631 272 292 979 430 33 76 776 646 672 543 446 123 235 24 448 185 721 781 449 942 560 842 754 114 270 400 977 850 727 432 201 531 190 805 208 865 32 485 173 712 916 176 514 86 984 948 320 816 103 142 893 515 238 889 587 390 542 31 623 92 290 737 519 23 572 662 389 903 354 981 118 715 202 848 764 642 590 361 422 323 878 241 50 757 551 102 60 550 473 783 356 886 177 399 180 311 113 773 336 700 708 212 230 864 4 561 761 146 316 20 814 149 738 953 906 41 888 483 831 332 689 629 484 169 536 808 929 710 791 74 189 49 373 825 366 976 463 751 130 431 987 691 61 178 806 628 14 637 573 648 902 673 742 364 63 541 885 668 368 301 896 983 381 416 533 444 863 71 838 447 282 722 946 952 265 88 907 117 39 955 622 221 679 840 30 844 492 217 388 187 132 421 333 420 996 182 815 818 576 267 481 394 745 744 802 98 993 145 951 589 7 880 192 612 398 161 616 920 580 112 608 509 337 206 705 11 355 615 405 105 526 594 279 703 143 66 343 466 657 991 934 962 872 801 690 214 386 853 199 508 402 726 908 403 512 264 667 520 300 785 89 849 334 627 997 749 27 274 140 630 919 725 97 64 458 578 224 683 787 826 748 958 656 303 141 245 486 248 723 408 280 198 181 342 771 837 625 158 601 15 165 310 643 21 909 971 239 633 535 899 735 372 349 155 570 835 87 28 34 79 732 331 747 548 636 988 718 344 281 768 25 291 380 873 324 428 756 433 75 734 746 975 789 923 309 5 602 453 517 393 322 289 866 778 970 490 811 770 58 834 150 262 910 357 80 557 510 16 869 804 213 277 654 739 90 583 47 901 539 867 418 131 759 597 139 171 252 682 502 800 358 855 704 319 379 352 995 966 828 370 353 688 641 195 950 564 467 547 879 591 714 12 944 681 409 313 164 365 956 892 986 571 856 110 596 1000 706 698 172 44 425 57 969 697 266 327 125 763 824 461 870 426 261 339 620 584 693 250 487 887 635 665 522 375 695 42 363 666 674 809 220 974 179 640 694 59 2 83 882 504 69 341 859 153 338 581 29 350 286 340 477 67 8 766 226 762 295 774 894 965 209 166 474 782 639 85 702 921 424 709 784 574 810 755 839 507 462 387 287 772 81 306 724 663 168 935 963 260 858 701 765 13 412 404 497 843 136 479 376 928 559 554 385 411 268 833 985 598 940 897 298 259 392 312 493 48 56 819 769 294 124 513 111 895 943 395 296 369 964 999 335 989 107 126 592 998 611 793 832 525 384 186 293 558 62 307 676 413 518 758 990 203 846 959 600 78 617 914 346 650 599 569 729 3 731 680 521 452 1 476 167 978 22 382 222 994 980 830 670 489 429 491 443 891 91 419 17 148 540 283 415 847 777 278 913 51 271 803 546 243 442 229 227 875 455 823 792 207 439 154 752 478 736 423 79 197 275 884 37 795 308 397 72 925 396 435 868 249 318 247 378 905 163 351 494 549 257 836 120 134 924 586 40 972 651 593 794 861 36 621 328 269 251 9 534 406 371 740 798 144 52 129 585 918 555 532 939 753 626 162 303 434 664 95 575 537 127 115 445 506 660 652 204 553 133 779 216 677 330 170 841 799 750 912 93 567 305 605 562 10 401 656 457 456 43 297 582 450 932 191 807 936 618 915 55 780 96 566 460 470 374 926 54 255 544 645 451 982 94 348 696 577 967 653 733 632 922 743 613 524 671 151 228 174 454 595 776 471 529 329 218 767 377 607 845 108 407 949 464 116 687 193 716 790 717 728 610 890 904 68 284 427 579 684 360 933 362 106 719 686 500 669 624 945 495 480 565 84 511 545 175 19 285 475 436 417 655 157 857 256 609 135 119 930 568 563 152 760 465 472 253 65 675 314 244 414 821 6 299 707 649 234 254 871 992 276 937 242 383 18 101 219 829 273 941 391 100 128 210 538 854 138 488 634 437 345 147 231 76 927 225 159 917 528 968 741 302 317 188 410 205 874 851 211 137 644 898 236 77 304 730 46 505 104 862 685 516 233 326 441 26 530 817 109 606 183 661 501 160 947 881 347 503 498 876 775 614 603 99 812 499 931 604 82 619 647 232 711 263 53 527 70 121 496 440 954 468 438 156 215 38 523 459 797 469 237 258 900 194 938 860 788 35 786 240 883 813 223 482 822 288 325 820 796 957 713 552 852 692 638 196 359 961 556 367 877 246 827 33 45 973 631 122 588 200 658 960 699 911 720 73 321 184 315 678 659 430 272 979 292 691 672 646 123 446 543 449 235 448 24 781 721 185 118 850 560 942 114 754 842 977 400 270 587 432 727 208 805 190 531 201 712 865 173 485 32 514 176 916 889 816 984 86 320 948 238 103 515 893 142 981 390 31 542 354 290 92 623 903 389 662 519 737 572 23 764 715 848 202 987 590 642 323 422 361 356 757 878 50 241 783 473 102 551 550 60 180 399 177 886 230 311 700 113 336 773 212 708 814 761 561 4 864 20 316 146 431 738 149 831 483 888 41 906 953 808 484 332 629 689 536 169 130 710 929 751 791 189 74 463 373 49 976 366 825 958 178 61 628 806 88 14 648 573 637 364 902 742 673 447 63 885 541 983 896 668 301 368 863 416 381 444 533 838 71 265 282 952 946 722 748 907 679 39 117 221 622 955 616 30 840 421 844 217 492 132 187 388 880 145 333 993 996 420 267 576 182 818 815 98 481 802 394 744 745 7 589 951 161 192 398 612 826 580 920 705 112 509 608 206 337 105 405 11 615 355 343 594 526 66 279 143 703 97 466 991 657 690 934 801 872 962 199 853 386 214 725 508 919 402 264 512 726 403 908 520 667 630 300 27 749 997 89 785 627 334 849 140 274 787 458 64 683 224 578 34 245 141 248 486 771 723 198 280 408 342 181 625 837 310 165 15 601 158 971 909 21 643 28 633 239 899 535 87 835 735 349 372 570 155 preorder-inorder 1000 955 668 1000 394 190 636 649 881 691 571 988 12 344 704 309 533 277 956 866 324 656 317 968 258 655 625 626 774 663 453 924 217 356 135 113 392 436 449 622 308 413 970 844 204 456 712 108 92 528 557 143 1 545 902 391 360 293 90 602 34 48 460 643 601 827 698 358 790 657 609 139 171 104 840 559 28 228 768 770 329 5 485 664 476 641 73 984 659 69 798 564 787 35 848 486 822 580 409 372 569 304 16 959 440 87 243 295 260 110 727 543 497 936 980 573 396 172 671 903 850 327 743 270 268 673 876 261 251 169 620 753 863 20 887 665 522 695 375 76 13 487 189 233 702 651 437 577 59 168 252 525 532 215 274 86 341 608 29 198 292 581 418 286 758 284 245 237 948 117 95 639 483 519 31 972 508 868 326 921 900 807 262 46 599 32 103 363 839 287 219 387 493 235 463 631 49 714 554 843 926 166 138 288 766 312 756 404 51 105 376 83 378 491 146 127 140 687 940 119 517 585 707 718 851 966 419 50 818 748 510 348 101 819 782 213 230 75 830 912 991 732 386 354 862 893 685 370 107 54 218 611 3 25 318 832 856 400 889 883 697 125 676 594 136 836 990 214 772 937 975 541 478 72 242 906 612 803 853 66 669 289 167 229 683 821 389 920 271 954 224 928 55 604 999 911 222 703 989 339 897 578 301 509 459 729 964 315 913 147 660 558 44 546 490 875 23 455 705 551 231 598 828 207 501 423 744 878 275 111 438 80 996 366 505 479 899 97 857 435 267 918 384 751 232 415 259 164 462 43 593 424 63 586 531 407 134 196 282 494 530 357 319 42 605 334 781 159 931 722 811 880 420 597 708 711 129 313 872 939 349 121 365 706 933 835 115 784 507 778 411 352 831 93 661 855 674 680 587 547 24 763 816 8 841 976 150 305 539 65 466 650 776 142 256 740 892 737 693 632 457 518 582 914 19 796 191 846 946 804 290 952 467 537 930 276 335 373 241 619 412 932 645 637 801 441 731 17 128 496 85 562 549 942 330 524 896 800 4 994 397 381 338 943 433 471 529 925 998 512 738 618 813 347 368 949 193 464 116 47 39 908 417 624 188 430 445 175 755 68 447 670 294 746 280 106 552 316 179 799 81 745 565 236 432 285 833 350 84 607 58 616 201 405 272 174 628 901 291 114 810 454 568 652 591 40 299 185 534 992 253 675 472 982 919 817 495 321 480 672 311 165 824 186 203 234 422 67 385 520 634 584 696 951 210 37 701 854 488 752 64 606 760 33 596 681 144 979 62 917 877 364 206 630 399 184 410 754 629 820 987 145 374 898 538 52 481 77 814 156 812 724 723 255 978 6 646 122 163 154 993 212 362 825 736 170 209 160 504 14 345 588 152 162 176 192 527 747 346 70 177 263 390 907 555 648 576 444 331 797 720 182 595 194 929 953 523 38 238 202 469 725 183 521 692 789 314 216 938 477 621 248 653 100 627 791 502 965 325 450 793 279 713 923 757 735 120 679 226 205 443 240 867 475 246 950 337 915 563 717 658 57 739 769 9 969 353 158 682 783 123 427 266 336 556 513 310 761 468 560 500 200 985 124 109 18 514 721 96 767 716 583 977 941 36 741 428 567 322 178 247 89 864 208 809 647 805 904 408 369 173 762 615 473 614 749 526 677 981 361 858 446 393 126 489 281 223 426 133 795 383 548 431 962 542 414 78 461 544 515 377 837 367 802 688 340 535 132 834 590 642 870 273 944 808 21 995 823 890 771 102 41 963 699 45 886 927 700 181 617 960 773 644 197 765 561 180 895 974 151 130 759 635 82 149 506 888 792 847 249 873 764 94 332 662 429 359 922 734 730 2 278 465 715 244 572 905 945 879 983 323 379 61 806 265 474 227 633 610 320 742 511 264 777 499 250 961 852 623 958 137 884 775 74 401 27 829 666 71 153 448 689 553 826 398 388 638 221 967 302 10 484 416 371 865 30 403 861 482 380 492 947 303 7 141 99 333 98 296 402 536 53 434 451 694 885 516 986 613 257 343 579 728 498 355 874 60 589 794 550 254 785 283 957 26 574 750 838 22 11 973 997 719 882 88 709 91 592 971 690 859 470 112 575 934 425 406 654 131 600 307 442 678 382 225 935 815 842 726 297 667 342 161 300 452 187 779 786 298 328 849 220 603 458 845 684 199 195 860 56 566 640 916 733 503 686 351 157 540 118 395 269 211 421 15 148 710 909 306 79 869 871 891 239 910 439 570 894 788 780 155 571 988 691 344 704 12 309 277 533 956 866 881 324 656 649 625 655 774 626 663 258 453 968 924 217 317 356 636 113 392 135 622 308 449 970 413 844 204 436 108 92 712 528 557 456 143 545 1 902 190 360 293 391 90 394 643 460 827 601 698 48 657 790 171 139 104 840 609 559 358 28 228 768 770 329 5 34 984 659 73 69 798 564 787 641 848 486 822 409 580 372 35 16 959 304 87 440 243 569 295 260 110 476 727 664 543 497 485 980 936 573 396 602 671 172 327 850 743 903 270 268 1000 620 863 20 753 887 665 169 375 695 76 522 487 189 13 233 702 651 251 437 577 59 261 215 532 274 525 86 341 252 29 608 198 168 418 581 286 292 758 876 237 948 95 117 639 245 31 508 972 868 519 326 921 483 46 262 103 32 363 599 839 807 219 287 493 235 387 463 900 49 714 926 843 166 554 138 631 766 312 288 51 404 105 376 83 756 491 146 378 127 284 940 517 119 851 718 966 707 419 585 50 687 818 140 348 819 101 782 213 230 510 912 991 830 386 732 354 862 893 75 685 370 107 54 748 318 25 832 400 856 889 3 136 594 836 214 990 772 676 937 541 478 975 72 125 242 906 697 612 853 669 66 289 803 229 821 389 683 271 920 954 167 224 928 883 999 911 604 222 55 339 897 989 301 509 578 729 459 964 703 315 611 913 147 218 660 558 44 673 875 490 23 455 546 705 598 231 828 207 551 744 423 878 275 111 501 438 668 899 97 857 479 267 918 384 435 415 259 164 232 462 751 593 424 43 63 505 586 366 407 134 196 531 357 42 319 605 530 334 159 931 781 722 811 880 494 597 708 420 711 129 282 349 939 121 872 706 365 933 313 835 784 115 507 778 996 831 93 352 661 855 674 411 547 24 763 587 816 8 680 976 841 150 80 466 65 650 539 776 142 305 256 740 955 632 518 582 457 796 191 19 846 804 290 952 946 467 914 930 335 373 241 276 412 619 932 537 637 645 441 731 801 17 693 496 85 562 128 330 942 800 896 4 994 524 338 381 943 397 433 471 549 925 512 738 998 618 813 529 347 737 116 47 39 464 624 430 445 188 175 755 447 68 670 417 294 746 280 106 908 552 316 193 179 799 949 350 833 84 285 607 58 432 616 201 236 174 628 272 291 901 810 454 568 114 652 591 405 299 40 185 534 992 565 675 472 253 919 817 982 495 321 745 672 824 165 186 311 203 422 234 67 480 385 81 634 520 696 951 584 37 210 488 854 64 606 752 760 33 701 681 596 144 368 917 364 206 399 630 184 877 629 820 987 754 145 374 410 538 52 481 77 814 156 898 724 812 723 255 62 646 122 163 6 993 362 212 825 154 170 209 160 736 504 14 345 978 162 192 176 527 152 70 346 177 747 390 263 907 555 588 576 648 444 797 331 720 182 979 929 523 953 38 194 238 469 202 725 521 183 692 595 938 216 477 621 248 314 627 100 791 502 653 965 789 325 892 793 279 713 450 679 120 226 735 240 443 867 475 205 563 915 717 337 658 950 9 969 353 769 682 158 783 739 266 336 513 556 310 427 761 468 123 560 500 200 57 985 124 246 514 721 18 96 109 767 757 567 428 247 89 178 864 322 208 809 741 904 805 408 369 647 173 36 762 941 473 614 615 749 677 526 981 977 361 858 446 393 583 426 223 133 281 383 795 548 489 542 414 962 78 431 461 126 837 367 377 802 515 535 834 132 590 340 642 688 273 870 808 21 944 995 544 771 102 890 963 41 699 45 886 823 700 960 617 773 181 197 644 765 927 561 716 180 895 923 130 635 759 82 149 151 792 847 249 888 764 873 94 506 734 730 922 2 278 465 359 715 429 244 662 905 945 983 323 879 379 572 265 474 806 227 633 61 610 742 320 264 511 777 499 250 332 623 137 958 884 852 74 401 775 27 961 666 153 71 448 829 553 826 398 689 388 638 221 974 10 416 484 865 30 371 403 861 302 380 492 482 303 947 141 99 7 98 333 296 967 694 451 516 986 885 613 434 579 355 498 874 728 60 343 794 589 550 257 283 785 26 957 574 254 838 22 750 973 11 997 719 882 53 91 592 709 971 690 859 88 470 934 575 425 406 654 112 600 131 307 678 382 225 442 935 815 842 536 297 726 667 342 161 402 779 187 849 220 328 603 298 684 195 860 199 56 845 566 640 458 916 786 503 686 733 540 395 269 118 211 157 421 15 351 148 452 306 79 909 869 871 891 710 910 239 439 570 300 894 780 788 155 postorder-inorder 1000 220 479 858 731 669 704 275 811 393 324 531 430 865 474 391 18 715 3 238 103 965 822 5 785 251 392 736 146 592 266 975 315 763 453 26 127 845 901 958 413 350 119 839 981 312 236 337 774 768 602 34 526 360 122 612 651 164 245 827 323 349 843 418 598 840 794 880 703 113 311 115 445 935 691 244 767 369 69 659 515 429 375 169 800 128 406 662 395 35 6 313 112 996 959 242 667 684 565 882 39 385 16 346 726 633 835 724 50 990 573 604 295 447 472 781 145 124 41 504 241 180 873 557 233 936 25 734 240 497 742 189 522 728 852 753 957 689 338 537 507 670 163 437 963 84 851 952 929 63 181 171 389 292 290 600 310 423 577 78 961 29 941 619 987 11 341 94 258 921 740 398 100 599 900 747 141 928 642 387 287 107 32 814 888 485 442 564 665 586 803 601 529 976 908 455 51 608 782 986 877 304 766 717 121 891 593 707 444 617 354 283 641 674 589 213 284 940 436 170 563 992 966 42 896 620 638 533 125 863 926 469 90 991 523 118 54 569 330 272 370 419 96 937 649 74 833 476 988 786 399 79 540 836 403 862 132 906 541 200 374 676 883 678 285 478 267 970 922 521 856 60 821 920 493 757 943 61 229 417 116 879 934 797 860 339 859 70 161 806 727 86 509 136 913 358 274 984 618 938 407 590 36 194 17 355 19 499 709 207 55 306 463 808 420 481 501 683 296 932 454 226 505 881 603 80 415 232 765 227 554 379 918 778 190 352 43 688 925 585 424 20 394 660 542 44 298 193 336 758 197 140 605 159 639 27 172 989 841 12 66 351 630 685 328 65 903 679 228 788 714 175 861 502 784 202 793 583 568 425 7 735 527 701 634 99 842 451 129 831 637 488 48 40 223 322 705 367 134 692 85 979 871 718 775 45 97 681 363 402 892 889 964 247 939 738 441 511 33 201 356 770 297 158 625 524 597 514 357 955 645 819 995 489 331 616 224 518 980 483 321 817 809 942 610 750 664 993 657 449 137 480 500 772 744 234 235 421 471 998 410 893 105 293 470 816 368 92 866 446 626 581 760 191 954 496 828 150 477 710 933 870 746 686 294 371 215 59 62 280 106 743 640 875 68 693 109 666 93 607 58 49 126 31 373 239 319 628 291 260 869 733 249 830 591 650 486 186 22 271 972 198 820 345 549 884 567 729 690 885 516 362 256 911 606 864 519 120 160 67 578 576 237 902 443 547 157 752 184 270 460 706 846 335 886 596 579 221 255 999 364 307 695 672 23 711 178 405 88 376 76 57 968 411 924 791 308 381 231 168 723 277 459 978 259 187 795 111 282 844 857 826 47 694 588 279 713 326 510 152 687 536 320 4 545 154 562 414 13 560 56 538 305 81 555 801 635 149 209 868 787 384 829 329 182 467 977 982 566 386 114 698 897 825 732 969 427 621 648 558 314 248 671 487 71 951 815 166 807 629 741 348 458 372 456 218 712 609 796 832 745 948 205 756 853 289 915 656 528 101 764 21 950 211 462 230 652 216 131 104 530 214 199 513 556 594 123 923 254 503 382 217 428 720 804 318 365 325 508 286 380 273 673 699 288 661 551 675 655 397 647 636 525 716 737 82 102 72 904 52 548 614 615 491 887 611 894 361 143 416 177 388 575 631 919 552 203 495 769 512 133 761 790 708 179 719 173 473 183 208 572 383 643 739 534 165 834 64 810 550 802 317 855 144 268 799 930 960 663 644 890 927 682 730 2 559 700 962 253 813 342 75 876 38 725 539 895 506 327 174 89 546 390 281 850 622 130 780 243 574 135 316 408 492 192 332 798 87 465 278 95 697 212 196 300 1000 838 8 945 805 905 252 262 142 263 849 824 490 206 264 98 944 439 435 613 396 344 754 668 931 762 777 156 153 219 475 378 535 464 24 899 210 580 776 916 302 967 167 484 431 946 748 907 595 117 947 303 658 482 823 466 185 299 269 812 30 561 188 553 359 433 721 53 91 755 37 872 544 77 448 343 257 914 434 696 151 517 498 874 452 818 792 677 138 773 353 147 878 440 250 83 632 432 997 400 261 584 582 73 532 520 654 848 28 401 571 653 994 265 985 426 953 309 680 623 10 225 783 854 412 847 789 971 46 139 494 347 246 450 973 438 301 587 108 837 340 956 110 646 749 195 627 702 457 468 917 162 377 276 334 409 867 983 759 148 9 15 14 974 543 333 624 722 222 909 366 204 910 751 155 404 1 570 949 771 779 422 461 176 898 912 220 858 479 651 704 669 731 865 275 430 531 324 393 811 391 474 975 715 18 251 3 785 5 238 822 965 103 266 392 592 146 736 119 315 350 453 763 413 26 958 901 845 127 612 774 337 981 839 236 312 122 768 360 602 526 34 843 245 164 349 323 827 63 598 418 880 794 840 767 244 445 703 115 311 113 691 935 835 369 996 659 69 375 429 515 112 800 169 35 128 395 662 406 313 6 633 959 16 684 667 242 385 565 39 882 726 346 742 573 990 50 724 781 295 604 472 447 936 124 145 233 557 504 41 873 180 241 497 25 240 734 929 189 537 753 852 728 522 338 689 957 963 437 507 163 670 952 851 84 519 181 94 341 290 292 389 171 29 310 600 961 78 577 423 11 941 987 619 321 258 888 921 747 100 398 740 900 599 814 141 32 928 107 642 287 387 118 485 529 442 601 564 803 586 665 717 908 976 608 51 455 766 986 782 304 877 170 121 593 891 436 940 707 354 617 444 641 283 284 674 213 589 620 992 563 896 42 966 523 863 638 125 533 991 926 90 469 979 96 419 54 370 272 330 569 267 478 649 937 285 833 74 678 988 476 883 786 836 540 79 399 862 403 200 132 541 906 676 374 932 970 856 521 922 417 821 60 493 920 229 61 943 757 86 879 116 727 934 70 797 859 339 860 806 161 36 509 590 274 136 358 913 407 938 618 984 296 17 194 808 19 355 463 499 306 709 55 207 683 501 481 420 85 454 193 226 80 505 603 881 298 925 227 765 232 415 918 379 554 190 778 688 43 352 20 424 585 44 542 660 394 692 140 197 758 336 989 605 172 27 639 159 66 12 841 134 351 328 685 630 502 903 65 228 679 714 788 861 175 7 425 784 568 202 583 793 367 735 634 701 527 831 99 129 451 842 705 637 40 48 488 322 223 483 871 681 97 718 45 775 939 363 892 402 247 964 889 980 441 738 33 511 518 356 201 224 297 770 616 158 331 524 625 489 514 597 995 357 819 645 955 864 234 750 809 817 610 942 744 137 449 657 993 664 772 500 480 446 471 421 235 410 998 470 293 105 893 866 816 92 368 477 626 191 760 581 150 828 496 954 606 710 870 933 109 693 371 746 294 686 743 106 215 280 62 59 68 875 640 911 93 666 239 373 607 49 58 31 126 256 319 733 628 869 260 291 362 972 271 591 830 249 22 186 486 650 690 345 820 198 884 549 729 567 516 885 912 120 898 67 160 999 902 237 576 578 460 443 270 547 184 752 157 255 706 221 579 596 846 886 335 381 405 364 178 307 711 23 672 695 308 88 76 376 791 924 411 968 57 56 231 111 795 168 277 723 187 259 978 459 560 282 13 857 844 154 826 510 47 326 694 713 279 588 687 152 545 536 4 320 414 562 868 81 305 538 209 149 635 801 555 745 384 787 467 829 182 329 897 977 698 114 386 566 982 951 732 825 71 969 487 314 427 558 648 621 671 248 832 815 807 166 796 629 348 741 218 456 372 458 609 712 165 948 652 205 230 756 462 289 853 211 915 101 528 656 950 21 764 534 216 530 104 131 923 199 214 123 594 556 513 503 254 769 217 382 720 428 286 365 318 804 508 325 288 699 380 673 273 495 661 397 655 675 551 203 636 647 716 525 52 82 737 904 72 102 491 548 615 614 894 611 887 552 919 361 631 416 143 575 388 177 739 790 761 133 512 643 708 719 179 473 173 383 572 208 183 176 834 802 550 810 64 539 855 317 663 144 960 268 930 799 725 890 644 682 927 962 730 700 559 2 38 342 813 253 876 75 546 895 89 174 327 506 850 281 390 492 780 130 622 408 316 135 574 243 721 332 192 87 798 433 278 465 212 697 95 142 945 1000 300 196 8 838 905 805 262 252 206 490 824 849 263 580 210 264 439 944 98 899 435 668 613 754 344 396 24 931 777 762 464 156 219 153 535 378 475 359 916 776 553 188 967 302 907 484 167 748 946 431 561 595 30 117 482 947 658 303 812 823 269 466 299 185 151 755 91 53 696 448 872 37 77 544 434 914 257 343 138 498 517 452 874 677 792 818 461 773 878 147 353 10 440 261 83 250 400 632 997 432 623 584 994 582 653 571 73 401 28 520 532 848 654 426 985 265 680 309 953 438 225 139 854 783 789 847 412 46 971 973 347 494 450 246 422 468 301 646 837 108 587 110 956 340 457 702 627 195 749 377 162 917 779 334 276 771 409 983 867 624 148 759 15 9 333 14 543 974 222 722 949 751 909 910 204 366 570 1 404 155 */
Write, Run & Share C Language code online using OneCompiler's C online compiler for free. It's one of the robust, feature-rich online compilers for C language, running the latest C version which is C18. Getting started with the OneCompiler's C editor is really simple and pretty fast. The editor shows sample boilerplate code when you choose language as 'C' and start coding!
OneCompiler's C online editor supports stdin and users can give inputs to programs using the STDIN textbox under the I/O tab. Following is a sample C program which takes name as input and print your name with hello.
#include <stdio.h>
int main()
{
char name[50];
printf("Enter name:");
scanf("%s", name);
printf("Hello %s \n" , name );
return 0;
}
C language is one of the most popular general-purpose programming language developed by Dennis Ritchie at Bell laboratories for UNIX operating system. The initial release of C Language was in the year 1972. Most of the desktop operating systems are written in C Language.
When ever you want to perform a set of operations based on a condition if-else
is used.
if(conditional-expression) {
// code
} else {
// code
}
You can also use if-else for nested Ifs and if-else-if ladder when multiple conditions are to be performed on a single variable.
Switch is an alternative to if-else-if ladder.
switch(conditional-expression) {
case value1:
// code
break; // optional
case value2:
// code
break; // optional
...
default:
// code to be executed when all the above cases are not matched;
}
For loop is used to iterate a set of statements based on a condition.
for(Initialization; Condition; Increment/decrement){
// code
}
While is also used to iterate a set of statements based on a condition. Usually while is preferred when number of iterations are not known in advance.
while(condition) {
// code
}
Do-while is also used to iterate a set of statements based on a condition. It is mostly used when you need to execute the statements atleast once.
do {
// code
} while (condition);
Array is a collection of similar data which is stored in continuous memory addresses. Array values can be fetched using index. Index starts from 0 to size-1.
data-type array-name[size];
data-type array-name[size][size];
Function is a sub-routine which contains set of statements. Usually functions are written when multiple calls are required to same set of statements which increases re-usuability and modularity.
Two types of functions are present in C
Library functions are the in-built functions which are declared in header files like printf(),scanf(),puts(),gets() etc.,
User defined functions are the ones which are written by the programmer based on the requirement.
return_type function_name(parameters);
function_name (parameters)
return_type function_name(parameters) {
//code
}