There are two main factors which multinational organizations have to consider in deciding whether to employ host-country nationals or expatriates: the legal position and the cost.
The legal position varies greatly from country to country, but most governments have some laws favoring and protecting the employment of their own nationals. For instance, in Saudi Arabia, any vacancy must be advertized within the country for two weeks before foreign applicants can be considered. Certain roles in human resources and security are reserved exclusively for Saudi nationals, and the government gives targets to companies, specifying how many Saudi nationals they should aim to employ. Failure to meet these targets may result in the loss of existing opportunities to sponsor overseas visas or the refusal of new ones.
The cost of employing expatriates is also generally much higher than that of employing local people. This is particularly the case for American and Western-European companies operating in Africa and Asia. Not only is the base-salary for foreign employees often higher, but many expatriates, particularly at a senior level, will expect a full expatriate package. This is likely to include annual flights to the home country for them and their family, free or heavily subsidized housing, and international schools for their children. The process for terminating an expatriate's contract is also typically more onerous, bureaucratic, and expensive than it is for a local hire.
Given these factors, many multinational organizations will ask this question the other way round, assuming that they will hire host-country nationals for most jobs, and only considering expatriates for key positions, to which they bring knowledge or experience which cannot be found locally.