#1342: 怪怪??= =測不出來哪裡錯


B88000005 (喔~~!!XD)

學校 : 國立內壢高級中學
編號 : 4538
來源 : [118.167.234.168]
最後登入時間 :
2021-05-12 14:50:32
c012. 10062 - Tell me the frequencies! -- UVa10062 | From: [220.138.47.205] | 發表日期 : 2009-02-08 11:03

我先用q[0]代表出現次數,

q[1]代表ASCII值大小,

然後再來整哩,

怎麼會有錯勒?

 

#include <iostream>

using namespace std;

int main()
{
    int q[2][150];
    string a;
    while(cin>>a){
        for(int i=0;i<150;i++){
            q[0][i]=0;
            q[1][i]=i;
        }
        for(int i=0;i<a.size();i++){
            q[0][a[i]]++;
        }
        for(int i=0;i<149;i++){
            for(int j=i+1;j<150;j++){
                if(q[0][i]>q[0][j]){
                    q[0][i]=q[0][i]+q[0][j];
                    q[0][j]=q[0][i]-q[0][j];
                    q[0][i]=q[0][i]-q[0][j];
                    q[1][i]=q[1][i]+q[1][j];
                    q[1][j]=q[1][i]-q[1][j];
                    q[1][i]=q[1][i]-q[1][j];
                }
                else if(q[0][i]==q[0][j]&&q[1][i]<q[1][j]){
                    q[0][i]=q[0][i]+q[0][j];
                    q[0][j]=q[0][i]-q[0][j];
                    q[0][i]=q[0][i]-q[0][j];
                    q[1][i]=q[1][i]+q[1][j];
                    q[1][j]=q[1][i]-q[1][j];
                    q[1][i]=q[1][i]-q[1][j];
                }
            }
        }
        for(int i=0;i<150;i++){
            if(q[0][i]>0){
                printf("%d %d\n",q[1][i],q[0][i]);
            }
        }
        printf("\n");
    }
    return 0;
}

 
#1343: Re:怪怪??= =測不出來哪裡錯


B88000005 (喔~~!!XD)

學校 : 國立內壢高級中學
編號 : 4538
來源 : [118.167.234.168]
最後登入時間 :
2021-05-12 14:50:32
c012. 10062 - Tell me the frequencies! -- UVa10062 | From: [220.138.47.205] | 發表日期 : 2009-02-08 11:10

沒事了XD...

原來是因為一次讀取一行= ="

 
ZeroJudge Forum