P1428 小鱼比可爱
题目描述:参赛的鱼被从左到右排成一排,头都朝向左边,然后每只鱼会得到一个整数数值,表示这只鱼的可爱程度,很显然整数越大,表示这只鱼越可爱,而且任意两只鱼的可爱程度可能一样。由于所有的鱼头都朝向左边,所以每只鱼只能看见在它左边的鱼的可爱程度,它们心里都在计算,在自己的眼力范围内有多少只鱼不如自己可爱呢。
输入格式:
第一行输入一个整数n,表示鱼的数目。
第二行内输入n个整数,用空格间隔,依次表示从左到右每只小鱼的可爱程度。
输出格式:行内输出n个整数,用空格间隔,依次表示每只小鱼眼中有多少只鱼不如自己可爱。
解析:首先使用for循环依次输入每条🐟的可爱程度,在第二个for循环中,从第一条🐟开始,运用while循环依次与在这条鱼之前的🐟进行比较,利用cnt进行计数。
#include<iostream> using namespace std; int main() { int total; cin >> total; int m[9999]; int i; for( i=0; i<total; i++) { cin >> m[i]; } int cnt=0; for( i=0; i<total; i++) { cnt = 0; //cnt每次都需要初始化,要放在一开始 if( i>0 ) { int b = i; int s = i; while( b>0 ) //注意b不能为零,如果b=0时进入循环,b就会等于-1 { b = b-1; if( m[b] < m[s] ) cnt++; } } cout << cnt << " "; } return 0; }
 
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号