p1178.cpp
来自「高手写的所有acm例程 在acm.zju.edu.cn 上的题目的例程」· C++ 代码 · 共 52 行
CPP
52 行
#include <stdio.h>
int page;
void print ()
{
int TotalUse = ( page + 3 ) / 4;
int Which [100] [4];
int i;
for ( i = 1; i <= TotalUse; i ++ ) {
if ( 2 * i - 1 <= page ) Which [i] [1] = 2 * i - 1;
else Which [i] [1] = 0;
if ( 2 * i <= page ) Which [i] [2] = 2 * i;
else Which [i] [2] = 0;
}
for ( i = TotalUse; i > 0; i -- ) {
if ( 2 * TotalUse + 2 * ( TotalUse - i ) + 1 <= page )
Which [i] [3] = 4 * TotalUse - 2 * i + 1;
else Which [i] [3] = 0;
if ( 2 * TotalUse + 2 * ( TotalUse - i ) + 2 <= page )
Which [i] [0] = 4 * TotalUse - 2 * i + 2;
else Which [i] [0] = 0;
}
printf ( "Printing order for %d pages:\n" , page );
for ( i = 1; i <= TotalUse; i ++ ) {
printf ( "Sheet %d, front: " , i );
if ( !Which [i] [0] ) printf ( "Blank" );
else printf ( "%d" , Which [i] [0] );
printf ( ", " );
if ( !Which [i] [1] ) printf ( "Blank\n" );
else printf ( "%d\n" , Which [i] [1] );
if ( page <= 1 ) continue;
printf ( "Sheet %d, back : " , i );
if ( !Which [i] [2] ) printf ( "Blank" );
else printf ( "%d" , Which [i] [2] );
printf ( ", " );
if ( !Which [i] [3] ) printf ( "Blank\n" );
else printf ( "%d\n" , Which [i] [3] );
}
}
main ()
{
while ( scanf ( "%d" , &page ) , page )
print ();
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?