HDU 2565 放大的X,hdu2565放大
放大的X
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 8695 Accepted Submission(s): 2618
Problem Description請你編程畫一個放大的’X’。
如3*3的’X’應如下所示:
X X XX X5*5的’X’如下所示:X X X X X X XX X
Input輸入資料第一行是一個整數T,表示有T組測試資料;
接下來有T行,每行有一個正奇數n(3 <= n <= 79),表示放大的規格。
Output對於每一個n列印一個規格為n * n放大的’X’;每組輸出後面空一行。
Sample Input
235
Sample Output
X X XX XX X X X X X XX X
注意:多注意輸出格式,想清楚,思路正確即可。一次性用for迴圈輸不出來。必須要用兩次雙for迴圈才可完成
#include<stdio.h>int main(){int T;scanf("%d",&T);while(T--){int i,j,n;scanf("%d",&n);for(i=0;i<=n/2;i++)//控制行的 {for(j=0;j<n-i;j++)//控制列的 {if(j==i||j==n-i-1) printf("X");elseprintf(" ");}printf("\n");}for(i=n/2-1;i>=0;i--)//兩行 {for(j=0;j<n-i;j++) {if(j==i||j==n-i-1)printf("X");elseprintf(" ");}printf("\n");}printf("\n");} return 0;}
HDU 1002
不知道,你寫的我有點看不懂,你可以考慮看看My Code吧。AC了的
代碼:
#include<stdio.h>
#include<string.h>
int main()
{
char a[5001],b[5001];
int aa[5001],bb[5001],k,n=0;
scanf("%d",&k);
for (int c=1;c<=k;c++)
{
scanf("%s%s",a,b);
int alen=strlen(a);
int blen=strlen(b);
memset(aa,0,sizeof(aa)); //清楚aa裡的數值,讓其為0
memset(bb,0,sizeof(bb));
int maxlen=blen;
if(alen>blen) maxlen=alen;
for(int i=alen-1;i>=0;i--)
aa[alen-i]=a[i]-'0';
for(int i=blen-1;i>=0;i--)
bb[blen-i]=b[i]-'0';
for(int i=1;i<=maxlen;i++)
{
aa[i]+=bb[i];
if(aa[i]>9)
{
if(i==maxlen) maxlen++;
aa[i+1]++;
aa[i]-=10;
}
}
printf("Case %d:\n",++n);
printf("%s + %s = ",a,b);
for(int i=maxlen;i>=1;i--)
printf("%d",aa[i]);
if (k==c)
printf("\n");
else
printf("\n\n");
}
return 0;
}
HDU 3743 剛開始看樹狀數組看完只可以A一些最簡單的對這題有點無解高人指教
樹狀數組,不是講出來的,是自己學來的,建議先做一下水題,百度文庫裡有10幾個經典題目,搞過來做一下,對於每一個題目,不會時問是必須的,但你只要簡單問一下思路,如果每一步都問的那麼詳細,比賽時就沒有爆發力!