雖然這題是12/14PO上來的新題目 不過到現在為止還沒有人成功ac
我自己嘗試之後只有第一個測試點通過...而且後面的測資點全部都是re 實在讓我很不解
#include <stdio.h>
void compare(char s[][2000],char temp[],int fors[])
{int i,j;
int boolok;
for(i=0;i<50;i++){
boolok=1;
for(j=0;j<2000;j++){
if(temp[j]!=s[i][j]&&temp[j]!=10){boolok=0;}
}
if(boolok==1){fors[i]++;break;}
}
if(boolok==0){
for(i=0;s[i][0]!=0;i++);
for(j=0;temp[j]!=0;j++){s[i][j]=temp[j];}
fors[i]++;
}
}
int main(){
char s[50][2000];
char temp[2000];
int fors[50];
int m,n;
int i,j;
scanf("%d %d ",&m,&n);
while (m>0){
for(i=0;i<50;i++){
fors[i]=0;
for(j=0;j<2000;j++){s[i][j]=0;}
}
for(i=0;i<n*m-1;i++){
for(j=0;j<2000;j++){temp[j]=0;}
for(j=0;j<2000;j++){
scanf("%c",&temp[j]);
if(temp[j]==10) {break;}
}
compare(s,temp,fors);
}
for(i=0;i<50;i++){ if(fors[i]<n){break;}}
for(j=0;s[i][j]!=0;j++) {printf("%c",s[i][j]);}
scanf("%d %d ",&m,&n);
}
return 0;
}
說明上寫著最有可能是呼叫範圍外的陣列造成的 可是就算我的break都沒有生效 迴圈內的範圍也一定在陣列裡面,尤其我的陣列還設得很大了= =
不知道有沒有人曾經在別題遇過這種情形或者是同一題遇到這種狀況 能不能分享一下解決方法?
雖然這題是12/14PO上來的新題目 不過到現在為止還沒有人成功ac
我自己嘗試之後只有第一個測試點通過...而且後面的測資點全部都是re 實在讓我很不解
#include
void compare(char s[][2000],char temp[],int fors[])
{int i,j;
int boolok;
for(i=0;i<50;i++){
boolok=1;
for(j=0;j<2000;j++){
if(temp[j]!=s[i][j]&&temp[j]!=10){boolok=0;}
}
if(boolok==1){fors[i]++;break;}
}
if(boolok==0){
for(i=0;s[i][0]!=0;i++);
for(j=0;temp[j]!=0;j++){s[i][j]=temp[j];}
fors[i]++;
}
}
int main(){
char s[50][2000];
char temp[2000];
int fors[50];
int m,n;
int i,j;
scanf("%d %d ",&m,&n);
while (m>0){
for(i=0;i<50;i++){
fors[i]=0;
for(j=0;j<2000;j++){s[i][j]=0;}
}
for(i=0;i for(j=0;j<2000;j++){temp[j]=0;}
for(j=0;j<2000;j++){
scanf("%c",&temp[j]);
if(temp[j]==10) {break;}
}
compare(s,temp,fors);
}
for(i=0;i<50;i++){ if(fors[i] for(j=0;s[i][j]!=0;j++) {printf("%c",s[i][j]);}
scanf("%d %d ",&m,&n);
}
return 0;
}
說明上寫著最有可能是呼叫範圍外的陣列造成的 可是就算我的break都沒有生效 迴圈內的範圍也一定在陣列裡面,尤其我的陣列還設得很大了= =
不知道有沒有人曾經在別題遇過這種情形或者是同一題遇到這種狀況 能不能分享一下解決方法?
for(i=0;s[i][0]!=0;i++);
噢看起來,這一行可能有一點點問題XD( 超不負責任發言~)
雖然這題是12/14PO上來的新題目 不過到現在為止還沒有人成功ac
我自己嘗試之後只有第一個測試點通過...而且後面的測資點全部都是re 實在讓我很不解
#include
void compare(char s[][2000],char temp[],int fors[])
{int i,j;
int boolok;
for(i=0;i<50;i++){
boolok=1;
for(j=0;j<2000;j++){
if(temp[j]!=s[i][j]&&temp[j]!=10){boolok=0;}
}
if(boolok==1){fors[i]++;break;}
}
if(boolok==0){
for(i=0;s[i][0]!=0;i++);
for(j=0;temp[j]!=0;j++){s[i][j]=temp[j];}
fors[i]++;
}
}
int main(){
char s[50][2000];
char temp[2000];
int fors[50];
int m,n;
int i,j;
scanf("%d %d ",&m,&n);
while (m>0){
for(i=0;i<50;i++){
fors[i]=0;
for(j=0;j<2000;j++){s[i][j]=0;}
}
for(i=0;i for(j=0;j<2000;j++){temp[j]=0;}
for(j=0;j<2000;j++){
scanf("%c",&temp[j]);
if(temp[j]==10) {break;}
}
compare(s,temp,fors);
}
for(i=0;i<50;i++){ if(fors[i] for(j=0;s[i][j]!=0;j++) {printf("%c",s[i][j]);}
scanf("%d %d ",&m,&n);
}
return 0;
}
說明上寫著最有可能是呼叫範圍外的陣列造成的 可是就算我的break都沒有生效 迴圈內的範圍也一定在陣列裡面,尤其我的陣列還設得很大了= =
不知道有沒有人曾經在別題遇過這種情形或者是同一題遇到這種狀況 能不能分享一下解決方法?
for(i=0;s[i][0]!=0;i++);
噢看起來,這一行可能有一點點問題XD( 超不負責任發言~)
我的s陣列都有歸零 而且還超出輸入範圍將近兩倍呢...所以這個跳出條件一定會發生阿QQ
(PS 我再自己電腦上執行一點問題都沒有)
然後後面的分號代表沒有執行的片段啦!不需要就這樣就好了
(不然他會誤判下一行是for的執行內容)
雖然這題是12/14PO上來的新題目 不過到現在為止還沒有人成功ac
我自己嘗試之後只有第一個測試點通過...而且後面的測資點全部都是re 實在讓我很不解
#include
void compare(char s[][2000],char temp[],int fors[])
{int i,j;
int boolok;
for(i=0;i<50;i++){
boolok=1;
for(j=0;j<2000;j++){
if(temp[j]!=s[i][j]&&temp[j]!=10){boolok=0;}
}
if(boolok==1){fors[i]++;break;}
}
if(boolok==0){
for(i=0;s[i][0]!=0;i++);
for(j=0;temp[j]!=0;j++){s[i][j]=temp[j];}
fors[i]++;
}
}
int main(){
char s[50][2000];
char temp[2000];
int fors[50];
int m,n;
int i,j;
scanf("%d %d ",&m,&n);
while (m>0){
for(i=0;i<50;i++){
fors[i]=0;
for(j=0;j<2000;j++){s[i][j]=0;}
}
for(i=0;i for(j=0;j<2000;j++){temp[j]=0;}
for(j=0;j<2000;j++){
scanf("%c",&temp[j]);
if(temp[j]==10) {break;}
}
compare(s,temp,fors);
}
for(i=0;i<50;i++){ if(fors[i] for(j=0;s[i][j]!=0;j++) {printf("%c",s[i][j]);}
scanf("%d %d ",&m,&n);
}
return 0;
}
說明上寫著最有可能是呼叫範圍外的陣列造成的 可是就算我的break都沒有生效 迴圈內的範圍也一定在陣列裡面,尤其我的陣列還設得很大了= =
不知道有沒有人曾經在別題遇過這種情形或者是同一題遇到這種狀況 能不能分享一下解決方法?
for(i=0;s[i][0]!=0;i++);
噢看起來,這一行可能有一點點問題XD( 超不負責任發言~)
我的s陣列都有歸零 而且還超出輸入範圍將近兩倍呢...所以這個跳出條件一定會發生阿QQ
(PS 我再自己電腦上執行一點問題都沒有)
然後後面的分號代表沒有執行的片段啦!不需要就這樣就好了
(不然他會誤判下一行是for的執行內容)
其實我不是在說那個分號XD
不過有人AC囉! (測資應該沒問題~)
雖然這題是12/14PO上來的新題目 不過到現在為止還沒有人成功ac
我自己嘗試之後只有第一個測試點通過...而且後面的測資點全部都是re 實在讓我很不解
#include
void compare(char s[][2000],char temp[],int fors[])
{int i,j;
int boolok;
for(i=0;i<50;i++){
boolok=1;
for(j=0;j<2000;j++){
if(temp[j]!=s[i][j]&&temp[j]!=10){boolok=0;}
}
if(boolok==1){fors[i]++;break;}
}
if(boolok==0){
for(i=0;s[i][0]!=0;i++);
for(j=0;temp[j]!=0;j++){s[i][j]=temp[j];}
fors[i]++;
}
}
int main(){
char s[50][2000];
char temp[2000];
int fors[50];
int m,n;
int i,j;
scanf("%d %d ",&m,&n);
while (m>0){
for(i=0;i<50;i++){
fors[i]=0;
for(j=0;j<2000;j++){s[i][j]=0;}
}
for(i=0;i for(j=0;j<2000;j++){temp[j]=0;}
for(j=0;j<2000;j++){
scanf("%c",&temp[j]);
if(temp[j]==10) {break;}
}
compare(s,temp,fors);
}
for(i=0;i<50;i++){ if(fors[i] for(j=0;s[i][j]!=0;j++) {printf("%c",s[i][j]);}
scanf("%d %d ",&m,&n);
}
return 0;
}
說明上寫著最有可能是呼叫範圍外的陣列造成的 可是就算我的break都沒有生效 迴圈內的範圍也一定在陣列裡面,尤其我的陣列還設得很大了= =
不知道有沒有人曾經在別題遇過這種情形或者是同一題遇到這種狀況 能不能分享一下解決方法?
for(i=0;s[i][0]!=0;i++);
噢看起來,這一行可能有一點點問題XD( 超不負責任發言~)
我的s陣列都有歸零 而且還超出輸入範圍將近兩倍呢...所以這個跳出條件一定會發生阿QQ
(PS 我再自己電腦上執行一點問題都沒有)
然後後面的分號代表沒有執行的片段啦!不需要就這樣就好了
(不然他會誤判下一行是for的執行內容)
其實我不是在說那個分號XD
不過有人AC囉! (測資應該沒問題~)
我還是找不到錯誤阿....
大大能不能講仔細一點呢?
雖然這題是12/14PO上來的新題目 不過到現在為止還沒有人成功ac
我自己嘗試之後只有第一個測試點通過...而且後面的測資點全部都是re 實在讓我很不解
#include
void compare(char s[][2000],char temp[],int fors[])
{int i,j;
int boolok;
for(i=0;i<50;i++){
boolok=1;
for(j=0;j<2000;j++){
if(temp[j]!=s[i][j]&&temp[j]!=10){boolok=0;}
}
if(boolok==1){fors[i]++;break;}
}
if(boolok==0){
for(i=0;s[i][0]!=0;i++);
for(j=0;temp[j]!=0;j++){s[i][j]=temp[j];}
fors[i]++;
}
}
int main(){
char s[50][2000];
char temp[2000];
int fors[50];
int m,n;
int i,j;
scanf("%d %d ",&m,&n);
while (m>0){
for(i=0;i<50;i++){
fors[i]=0;
for(j=0;j<2000;j++){s[i][j]=0;}
}
for(i=0;i for(j=0;j<2000;j++){temp[j]=0;}
for(j=0;j<2000;j++){
scanf("%c",&temp[j]);
if(temp[j]==10) {break;}
}
compare(s,temp,fors);
}
for(i=0;i<50;i++){ if(fors[i] for(j=0;s[i][j]!=0;j++) {printf("%c",s[i][j]);}
scanf("%d %d ",&m,&n);
}
return 0;
}
說明上寫著最有可能是呼叫範圍外的陣列造成的 可是就算我的break都沒有生效 迴圈內的範圍也一定在陣列裡面,尤其我的陣列還設得很大了= =
不知道有沒有人曾經在別題遇過這種情形或者是同一題遇到這種狀況 能不能分享一下解決方法?
for(i=0;s[i][0]!=0;i++);
噢看起來,這一行可能有一點點問題XD( 超不負責任發言~)
我的s陣列都有歸零 而且還超出輸入範圍將近兩倍呢...所以這個跳出條件一定會發生阿QQ
(PS 我再自己電腦上執行一點問題都沒有)
然後後面的分號代表沒有執行的片段啦!不需要就這樣就好了
(不然他會誤判下一行是for的執行內容)
其實我不是在說那個分號XD
不過有人AC囉! (測資應該沒問題~)
我還是找不到錯誤阿....
大大能不能講仔細一點呢?
大大 還有我題目也不是很了解...
上面的n跟m如果沒有顛倒 則積木數量是只有幾種字串嗎?
是一組積木內字串都一樣 還是每一組積木內都有n種字串呢?