1. 程式人生 > >我該學習哪個人工智慧系統

我該學習哪個人工智慧系統

我該學習哪個人工智慧系統

Description
在這人工智慧蓬勃發展的今天,很多家公司都推出了機器人和AI平臺,比如百度的paddlepaddle,谷歌的TensorFlow,facebook torch,而在應用方面則更多,有很多家的公司都推出了應用,機器視覺,指紋識別,人臉識別,視網膜識別,虹膜識別,掌紋識別,專家系統,自動規劃,智慧搜尋,定理證明,博弈,自動程式設計,智慧控制,機器人學,語言和影象理解,遺傳程式設計等很多方面成為人工智慧的應用。對於喜歡AI的你,面對如此多的公司的應用,希望能按照人工智慧學習的價值進行一個排序,然後去有針對性的去了解。
Input
多組測試資料,先輸入一個整數t表示組數,然後每組先輸入一個整數n(n<=20),隨後是n行,每行分別是三部分,用空格隔開,分別為公司名稱(由不超過10個的大小寫字母組成),產品名稱(由不超過15個的大小寫字母組成),學習價值(一個正整數)
Output


對於每組測試資料,你需要輸出3行,第1行為公司名稱,第2行為產品名稱,第3行為學習價值,每行的資料均需按照學習價值從高到低的順序輸出
Sample Input
1
3
google TensorFlow 88
baidu paddlepaddle 90
facebook torch 83
Sample Output
baidu google facebook
paddlepaddle TensorFlow torch
90 88 83

#include<stdio.h>
struct xt{
    char name[20];
    char nam[20];	//我在這裡WA了好幾次,越往大里開越好
    int jz;
};
int main()
{
    struct xt s[50],temp;
    int T,n,i,j;
    scanf("%d",&T);
    while(T--)
    {
        scanf("%d",&n);
        //	getchar();	//最好寫
        for(i=0;i<n;i++)
            scanf("%s%s%d",s[i].name,s[i].nam,&s[i].jz);
  	//	getchar();	//最好寫
        for(i=0;i<n-1;i++)
        {
            for(j=i+1;j<n;j++)
            if(s[i].jz<s[j].jz)
            {
                temp=s[i];
                s[i]=s[j];
                s[j]=temp;
            }
        }
        for(i=0;i<n-1;i++)
            printf("%s ",s[i].name);
        printf("%s\n",s[n-1].name);
        for(i=0;i<n-1;i++)
            printf("%s ",s[i].nam);
        printf("%s\n",s[n-1].nam);
        for(i=0;i<n-1;i++)
            printf("%d ",s[i].jz);
        printf("%d\n",s[n-1].jz);
    }
}

同學的程式碼,瞭解一下

#include<stdio.h> 
#include<algorithm> 
using namespace std; 
struct  node 
{ 
    char cn[20],pn[20];//cn--公司名字,pn--產品名字 
    int v; 
}a[30]; 
bool cmp(node a,node b) 
{ 
    return a.v>b.v; 
} 
  
int main() 
{ 
    int t,n; 
    scanf("%d",&t); 
    while(t--) 
    { 
        scanf("%d",&n); 
        getchar(); 
        for(int i=0;i<n;i++) 
        { 
            scanf("%s",a[i].cn); 
            scanf("%s",a[i].pn); 
            scanf("%d",&a[i].v); 
        } 
        sort(a,a+n,cmp); 

        for(int i=0;i<n-1;i++) 
            printf("%s ",a[i].cn); 
        printf("%s\n",a[n-1].cn); 
        for(int i=0;i<n-1;i++) 
            printf("%s ",a[i].pn); 
        printf("%s\n",a[n-1].pn); 
        for(int i=0;i<n-1;i++) 
            printf("%d ",a[i].v); 
        printf("%d\n",a[n-1].v); 
    } 
    return 0; 
} 

cmp是自定義的,而sort 是按從小到大的順序排序,如果要從大到小
就要

int cmp(int x,int y)
{
	return x>y;
}

在主函式裡的表述是sort(a,a+n,cmp)
sort函式標頭檔案是#include <algorithm>
PS如果int a[100],就是對a[0]~a[99]的函式進行排序,寫成sort(a,a+100)