【C語言 翁愷·第3周】
1時間換算(5分)
題目內容:
UTC是世界協調時,BJT是北京時間,UTC時間相當於BJT減去8。現在,你的程式要讀入一個整數,表示BJT的時和分。整數的個位和十位表示分,百位和千位表示小時。如果小時小於10,則沒有千位部分;如果小時是0,則沒有百位部分;如果小時不是0而分小於10分,需要保留十位上的0;如果小時是0而分小於10分的,則不需要保留十位上的0。如1124表示11點24分,而905表示9點5分,36表示0點36分,7表示0點7分。
有效的輸入範圍是0到2359,即你的程式不可能從測試伺服器讀到0到2359以外的輸入資料。
你的程式要輸出這個時間對應的UTC時間,輸出的格式和輸入的相同,即輸出一個整數,表示UTC的時和分。整數的個位和十位表示分,百位和千位表示小時。如果小時小於10,則沒有千位部分;如果小時是0,則沒有百位部分;如果小時不是0而分小於10分,需要保留十位上的0;如果小時是0而分小於10分的,則不需要保留十位上的0。
提醒:要小心跨日的換算。
輸入格式:
一個整數,表示BJT的時和分。整數的個位和十位表示分,百位和千位表示小時。如果小時小於10,則沒有千位部分;如果小時是0,則沒有百位部分;如果小時不是0而分小於10分,需要保留十位上的0;如果小時是0而分小於10分的,則不需要保留十位上的0。
輸出格式:
一個整數,表示UTC的時和分。整數的個位和十位表示分,百位和千位表示小時。如果小時小於10,則沒有千位部分;如果小時是0,則沒有百位部分;如果小時不是0而分小於10分,需要保留十位上的0;如果小時是0而分小於10分的,則不需要保留十位上的0。
輸入樣例:
803
輸出樣例:
3
時間限制:500ms記憶體限制:32000kb
#include<stdio.h> #include<string.h> int main() { int n; int h,m; scanf("%d",&n); h=n/100; m=n%100; if(h<8) h+=24; h-=8; if(h) { printf("%d",h); if(m<10) printf("0"); printf("%d",m); } else { printf("%d",m); } }
2分佇列(5分)
題目內容:
班級第一次列隊,通常老師會讓同學按身高排成一列,然後1、2報數,喊到1的同學向前一 步,就這樣,隊伍就變成兩列了。假設現在一個班級有n個同學,並且他們已經按身高排成 了一列,同學按身高從1到n編號,你能告訴我最後哪些編號的同學站在了第一列麼?
輸入格式:
輸入一個正整數n,表示班級的人數。
輸出格式:
按順序輸出所有在第一列的同學對應的編號,每兩個編號之間用一個空格隔開,最後一個編號後面沒有空格。
輸入樣例:
11
輸出樣例:
1 3 5 7 9 11
時間限制:500ms記憶體限制:32000kb
#include<stdio.h>
#include<string.h>
int main()
{
int n;
scanf("%d",&n);
for(int i=1;i<=n;i+=2)
{
if(i==1)
printf("%d",1);
else
printf(" %d",i);
}
printf("\n");
return 0;
}